From 264de867166e18ffa604c442c6918cc26415c72c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20D=C3=BCsterhus?= Date: Mon, 23 Jun 2025 14:21:08 +0200 Subject: [PATCH] Support declaring functions with name clone For use in stubs. see 9c7a3f8d8fa392fadb65dbb4cab29d90ded6ae9e see https://wiki.php.net/rfc/clone_with_v2 see php/php-src#18919 --- grammar/php.y | 1 + lib/PhpParser/Parser/Php7.php | 1707 ++++++++-------- lib/PhpParser/Parser/Php8.php | 1813 +++++++++-------- .../parser/stmt/function/clone_function.test | 58 + 4 files changed, 1830 insertions(+), 1749 deletions(-) create mode 100644 test/code/parser/stmt/function/clone_function.test diff --git a/grammar/php.y b/grammar/php.y index ec70451fe6..c33fa0b347 100644 --- a/grammar/php.y +++ b/grammar/php.y @@ -471,6 +471,7 @@ fn_identifier: identifier_not_reserved | T_READONLY { $$ = Node\Identifier[$1]; } | T_EXIT { $$ = Node\Identifier[$1]; } + | T_CLONE { $$ = Node\Identifier[$1]; } ; function_declaration_statement: diff --git a/lib/PhpParser/Parser/Php7.php b/lib/PhpParser/Parser/Php7.php index 7371e8bb63..7c2bf4d593 100644 --- a/lib/PhpParser/Parser/Php7.php +++ b/lib/PhpParser/Parser/Php7.php @@ -164,8 +164,8 @@ class Php7 extends \PhpParser\ParserAbstract public const T_ATTRIBUTE = 399; protected int $tokenToSymbolMapSize = 400; - protected int $actionTableSize = 1291; - protected int $gotoTableSize = 609; + protected int $actionTableSize = 1289; + protected int $gotoTableSize = 651; protected int $invalidSymbol = 172; protected int $errorSymbol = 1; @@ -395,14 +395,14 @@ class Php7 extends \PhpParser\ParserAbstract protected array $action = array( 128, 129, 130, 568, 131, 132, 948, 757, 758, 759, - 133, 38, 841, -85, 0, 1369,-32766,-32766,-32766, 488, - 832, 1126, 1127, 1128, 1122, 1121, 1120, 1129, 1123, 1124, - 1125,-32766,-32766,-32766, -333, 751, 750,-32766, 843,-32766, + 133, 38, 841, -85, 0, 1370,-32766,-32766,-32766, 488, + 832, 1127, 1128, 1129, 1123, 1122, 1121, 1130, 1124, 1125, + 1126,-32766,-32766,-32766, -334, 751, 750,-32766, 843,-32766, -32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767, - -32767, -372,-32766, -372, 1038, 760, 1126, 1127, 1128, 1122, - 1121, 1120, 1129, 1123, 1124, 1125, 382, 383, 442, 265, + -32767, -373,-32766, -373, 1039, 760, 1127, 1128, 1129, 1123, + 1122, 1121, 1130, 1124, 1125, 1126, 382, 383, 442, 265, 134, 385, 764, 765, 766, 767, 427, 837, 428, -85, - 330, 36, 248, 2, 292, 821, 768, 769, 770, 771, + 331, 36, 248, 2, 292, 821, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 797, 569, 798, 799, 800, 801, 789, 790, 347, 348, 792, 793, 778, 779, 780, 782, 783, 784, 358, 824, 825, 826, 827, 828, @@ -410,120 +410,119 @@ class Php7 extends \PhpParser\ParserAbstract 807, 808, 820, 804, 805,-32766,-32766, 573, 574, 803, 575, 576, 577, 578,-32766, 579, 580, 474, 475, 869, 238, 870, 806, 581, 582, 489, 135, 838, 128, 129, - 130, 568, 131, 132, 1071, 757, 758, 759, 133, 38, - -32766, 35, 731, 1031, 1030, 1029, 1035, 1032, 1033, 1034, + 130, 568, 131, 132, 1072, 757, 758, 759, 133, 38, + -32766, 35, 731, 1032, 1031, 1030, 1036, 1033, 1034, 1035, -32766,-32766,-32766,-32767,-32767,-32767,-32767, 101, 102, 103, - 104, 105, -333, 751, 750, 1047, 927,-32766,-32766,-32766, + 104, 105, -334, 751, 750, 1048, 927,-32766,-32766,-32766, 842,-32766, 840,-32766,-32766,-32766,-32766,-32766,-32766,-32766, -32766,-32766,-32766, 760,-32766,-32766,-32766, 614,-32766, 291, -32766,-32766,-32766,-32766,-32766, 136, 721, 265, 134, 385, - 764, 765, 766, 767, -616,-32766, 428,-32766,-32766,-32766, - -32766, -616, 145, 821, 768, 769, 770, 771, 772, 773, + 764, 765, 766, 767, -617,-32766, 428,-32766,-32766,-32766, + -32766, -617, 145, 821, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 797, 569, 798, 799, 800, 801, 789, 790, 347, 348, 792, 793, 778, 779, 780, 782, 783, 784, 358, 824, 825, 826, 827, 828, 570, 917, 428, -195, 785, 786, 571, 572, -194, 809, 807, 808, - 820, 804, 805, 1292, 251, 573, 574, 803, 575, 576, - 577, 578, -274, 579, 580, 1100, 82, 83, 84, 743, + 820, 804, 805, 1293, 251, 573, 574, 803, 575, 576, + 577, 578, -275, 579, 580, 1101, 82, 83, 84, 743, 806, 581, 582, 237, 148, 781, 752, 753, 754, 755, 756, 150, 757, 758, 759, 794, 795, 37, 24, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 1115, 276,-32766,-32766,-32766, 929, 1267, - 1266, 1268, 716, 834, 311, 394, 109, 7, 1101, -569, - 760,-32766,-32766,-32766, 841, 1354,-32766, 1099,-32766,-32766, - -32766, 1272, 1353, 313, 761, 762, 763, 764, 765, 766, - 767, 998,-32766, 830,-32766,-32766, 927, -616, 325, -616, + 106, 107, 108, 1116, 276,-32766,-32766,-32766, 929, 1268, + 1267, 1269, 716, 834, 311, 394, 109, 7, 1102, -570, + 760,-32766,-32766,-32766, 841, 1355,-32766, 1100,-32766,-32766, + -32766, 1273, 1354, 315, 761, 762, 763, 764, 765, 766, + 767, 999,-32766, 830,-32766,-32766, 927, -617, 327, -617, 821, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 797, 819, 798, 799, 800, 801, 789, 790, 791, 818, 792, 793, 778, 779, 780, 782, 783, 784, 823, - 824, 825, 826, 827, 828, 829, -569, -569, 343, 785, + 824, 825, 826, 827, 828, 829, -570, -570, 343, 785, 786, 787, 788, 836, 809, 807, 808, 820, 804, 805, 718, 564, 796, 802, 803, 810, 811, 813, 812, 140, - 814, 815, 841, 328, 344,-32766, -569, 806, 817, 816, + 814, 815, 841, 330, 344,-32766, -570, 806, 817, 816, 49, 50, 51, 520, 52, 53, 869, -110, 870, 917, - 54, 55, -110, 56, -110, -567,-32766,-32766,-32766, 307, - 1047, 126, -110, -110, -110, -110, -110, -110, -110, -110, - -110, -110, -110, -613, 372, 106, 107, 108, 376, 276, - -613, 392, 1334,-32766, 291, 288, 1304, 446, 57, 58, - -32766, 109, 447, 999, 59, 47, 60, 245, 246, 61, + 54, 55, -110, 56, -110, -568,-32766,-32766,-32766, 307, + 1048, 126, -110, -110, -110, -110, -110, -110, -110, -110, + -110, -110, -110, -614, 372, 106, 107, 108, 376, 276, + -614, 392, 1335,-32766, 291, 288, 1305, 446, 57, 58, + -32766, 109, 447, 1000, 59, 47, 60, 245, 246, 61, 62, 63, 64, 65, 66, 67, 68,-32766, 28, 267, - 69, 444, 521, 448, -347, 74, 1298, 1299, 522, 449, - 841, 328, -567, -567, 1296, 42, 20, 523, 929, 524, - 927, 525, 716, 526, -565, 696, 527, 528, -567, 927, + 69, 444, 521, 448, -348, 74, 1299, 1300, 522, 449, + 841, 330, -568, -568, 1297, 42, 20, 523, 929, 524, + 927, 525, 716, 526, -566, 696, 527, 528, -568, 927, 847, 44, 45, 450, 379, 378, -78, 46, 529, 927, - -573,-32766, -567, 370, 342, 1350, 103, 104, 105, -564, - 1258, 927, 301, 302, 1044, 531, 532, 533, -607, 722, - -607, 697, 464, 465, 466, 151, 1047, 535, 536, 723, - 1284, 1285, 1286, 1287, 1289, 1281, 1282, 299, -58, 1047, - 153, 726, 125, 1288, 1283, 698, 699, 1267, 1266, 1268, - 300, -565, -565, 70, -154, -154, -154, 323, 324, 328, - -57, -4, 927, 917, 1267, 1266, 1268, -565, -87, -154, - 284, -154, 917, -154, 154, -154, -564, -564, 155, -572, - 157, -565, 917, 33, 832, 377, -613, 123, -613, 751, - 750, 124, -564, 137, 917, 289, 967, 968, 81, 751, - 750, 530, 328, 138, -571, 620, -564, 663, 21, 903, - 963, -110, -110, -110, 32, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 144, -566, - 382, 383, 28, 268, 1379, 158, 927, 1380, 967, 968, - 427, 159, 929, 969, 841, 917, 716, -154, 1296, 951, - 160, 929, 963, 384, 383, 716, 832, 1174, 1176, 682, - 683, 984, 1044, 427, 161, 716, 733, 377, -563, 440, - 1070, 141, 162, 929, 298, 328, -84, 716, 967, 968, - 149, 410, -307, 530, 1258, -78, 300, 1047, 751, 750, - -73, 534, 963, -110, -110, -110, -566, -566, 950, 288, - 1272, 535, 536, -72, 1284, 1285, 1286, 1287, 1289, 1281, - 1282, 284, -566, 380, 381, 11, 1265, 1288, 1283, 917, - -71, 751, 750, -70, 929,-32766, -566, 72, 716, -4, - -16, 1265, 324, 328, -69, -563, -563, 292,-32766,-32766, - -32766, -68,-32766, -67,-32766, -66,-32766, 386, 387,-32766, - -65, -563, 1263, -46,-32766,-32766,-32766, -18,-32766, 142, - -32766,-32766, 275, 285, 1265, -563,-32766, 424, 28, 267, - 732,-32766,-32766,-32766, 735,-32766, 1046,-32766,-32766,-32766, - 841, 841,-32766, 926, 1296, 1044, 147,-32766,-32766,-32766, - 654, 655, -303,-32766,-32766, 1267, 1266, 1268, 929,-32766, + -574,-32766, -568, 370, 342, 1351, 103, 104, 105, -565, + 1259, 927, 301, 302, 1045, 531, 532, 533, -608, 722, + -608, 697, 464, 465, 466, 151, 1048, 535, 536, 723, + 1285, 1286, 1287, 1288, 1290, 1282, 1283, 299, -58, 1048, + 153, 726, 125, 1289, 1284, 698, 699, 1268, 1267, 1269, + 300, -566, -566, 70, -154, -154, -154, 325, 326, 330, + -57, -4, 927, 917, 1268, 1267, 1269, -566, -87, -154, + 284, -154, 917, -154, 154, -154, -565, -565, 155, -573, + 157, -566, 917, 33, 832, 377, -614, 123, -614, 751, + 750, 124, -565, 137, 917, 289, 968, 969, 81, 751, + 750, 530, 330, 138, -572, 620, -565, 663, 21, 903, + 964, -110, -110, -110, 32, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 144, -567, + 382, 383, 28, 268, 1380, 158, 927, 1381, 968, 969, + 427, 159, 929, 970, 841, 917, 716, -154, 1297, 384, + 383, 929, 964, 682, 683, 716, 160, 1175, 1177, 427, + 161, 985, 1045, 380, 381, 716, 733, 377, -564, 440, + 1071, 141, 162, 929, 298, 330, -84, 716, 968, 969, + 149, 410, -308, 530, 1259, -78, 300, 1048, 751, 750, + -73, 534, 964, -110, -110, -110, -567, -567, -72, 288, + 1273, 535, 536, -71, 1285, 1286, 1287, 1288, 1290, 1282, + 1283, 284, -567, 386, 387, 11, 1266, 1289, 1284, 917, + -70, 751, 750, -69, 929,-32766, -567, 72, 716, -4, + -16, 1266, 326, 330, -68, -564, -564, 292,-32766,-32766, + -32766, -67,-32766, -66,-32766, -65,-32766, -46, -18,-32766, + 142, -564, 1264, 275,-32766,-32766,-32766, 285,-32766, 732, + -32766,-32766, 952, 951, 1266, -564,-32766, 424, 28, 267, + 832,-32766,-32766,-32766, 735,-32766, 1047,-32766,-32766,-32766, + 841, 841,-32766, 926, 1297, 1045, 147,-32766,-32766,-32766, + 654, 655, -304,-32766,-32766, 1268, 1267, 1269, 929,-32766, 424, 280, 716, 28, 268, 281, 286, 287, 336, 73, - 1047,-32766, 290, 293, 294, 841, -110, -110, -563, 1296, - 1258, -110, 944,-32766, 276, 109, 692, 832, 146, 1381, - -110, 707, 841, 585, 284, 1133, 685, 709, 536,-32766, - 1284, 1285, 1286, 1287, 1289, 1281, 1282,-32766, 1047, 664, - -50, 10, 308, 1288, 1283, 1258, 669, 306, 471, 305, - 499, 300, 312, 72, 74, 670, 964, 1303, 324, 328, - 328, -529, 291, 536, 686, 1284, 1285, 1286, 1287, 1289, - 1281, 1282, 652, 139, 1305, -563, -563, 591, 1288, 1283, - -519, 300, 34,-32766, 8, 840, 0, 618, 72, 1265, - 0, -563, 0, 324, 328, 0,-32766,-32766,-32766, 0, - -32766, 0,-32766, 0,-32766, -563, 0,-32766,-32766, 0, - 0, 27,-32766,-32766,-32766, 927,-32766, 40,-32766,-32766, - 0, 0, 1265, 374,-32766, 424, 0, 946, 0,-32766, - -32766,-32766, 0,-32766, 41,-32766,-32766,-32766, 927, 740, - -32766, 741, 860, 908, 1008,-32766,-32766,-32766, 985,-32766, - 992,-32766,-32766, 982, 993, 1265, 906,-32766, 424, 48, - 980, 1104,-32766,-32766,-32766, 1107,-32766, 1108,-32766,-32766, - -32766, 1105, -601,-32766, 1106, 1112, -277, 494,-32766,-32766, - -32766, 1293,-32766, 852,-32766,-32766, 1320, 1338, 1265, 598, - -32766, 424, 1372, 657, 1272,-32766,-32766,-32766, 917,-32766, - -600,-32766,-32766,-32766, -599, -573,-32766, -275, -572, -571, - -570,-32766,-32766,-32766, -252, -252, -252,-32766,-32766, -513, - 377, 917, 1,-32766, 424, 29, 303, 304, 30, 39, - 43, 967, 968, 71, 75,-32766, 530, -251, -251, -251, - -274, 76, 375, 377, 903, 963, -110, -110, -110, 77, - 78, 79, 80, 143, 967, 968, 127, 152, 156, 530, - 243, 332, 359, 360, 361, 362, 363, 903, 963, -110, - -110, -110,-32766, 13, 364, 841, 365, 929, 1265, 14, - 366, 716, -252, 367, 368,-32766,-32766,-32766, 369,-32766, - 371,-32766, 441,-32766, 563, 322,-32766, 15, 16, 18, - 929,-32766,-32766,-32766, 716, -251, 408,-32766,-32766, 490, - -110, -110, 491,-32766, 424, -110, 498, 501, 502, 503, - 504, 508, 509, 510, -110,-32766, 518, 596, 702, 1073, - 1214, 1294, 1072,-32766, 1053, 1253, 1049, -279, -102, 12, - 17, 22, 297, 407, 610, 615, 643, 708, 1218, 1271, - 1215, 1351, 0, 373, 717, 300, 720, 724, 74, 725, - 1231, 727, 728, 729, 328, 409, 730, 734, 719, 0, - 413, 737, 904, 1376, 1378, 863, 862, 957, 1000, 1377, - 956, 954, 955, 958, 1246, 937, 947, 935, 990, 991, - 641, 1375, 1332, 1321, 1339, 1348, 0, 0, 1297, 0, - 328 + 1048,-32766, 950, 290, 293, 841, -110, -110, -564, 1297, + 1259, -110, 294,-32766, 944, 276, 146, 109, 692, 832, + -110,-32766, 841, 707, 284, 664, 1134, 669, 536,-32766, + 1285, 1286, 1287, 1288, 1290, 1282, 1283, 1382, 1048, 585, + -50, 709, 652, 1289, 1284, 1259, 685, 306, 10, 305, + 471, 300, 499, 72, 74, 965, 314, 670, 326, 330, + 330, -530, 291, 536, 686, 1285, 1286, 1287, 1288, 1290, + 1282, 1283,-32766, 139, 591, -564, -564, 1304, 1289, 1284, + 1306, -520, 308,-32766, 946, 40, -278, 8, 72, 1266, + 27, -564, 34, 326, 330, 0,-32766,-32766,-32766, 0, + -32766, 0,-32766, 0,-32766, -564, 0,-32766, 0, 0, + 0, 0,-32766,-32766,-32766, 927,-32766, 0,-32766,-32766, + 0, 300, 1266, 374,-32766, 424, 618, 0, 41,-32766, + -32766,-32766, 840,-32766, 740,-32766,-32766,-32766, 927, -602, + -32766, 741, 860, 908, 1009,-32766,-32766,-32766, 986,-32766, + 993,-32766,-32766, 983, 994, 1266, 906,-32766, 424, 48, + 981, 1105,-32766,-32766,-32766, 1108,-32766, 1109,-32766,-32766, + -32766, 1106, -601,-32766, 1107, 1113, -276, 494,-32766,-32766, + -32766, 1294,-32766, 852,-32766,-32766, 1321, 1339, 1266, 598, + -32766, 424, 1373, 657, 1273,-32766,-32766,-32766, 917,-32766, + -600,-32766,-32766,-32766, -574, -573,-32766, -275, -572, -571, + -514,-32766,-32766,-32766, -253, -253, -253,-32766,-32766, 1, + 377, 917, 29,-32766, 424, 30, 303, 304, 39, 43, + 71, 968, 969, 75, 76,-32766, 530, -252, -252, -252, + 13, 77, 375, 377, 903, 964, -110, -110, -110, 78, + 79, 80, 143, 152, 968, 969, 127, 156, 243, 530, + 332, 359, 360, 361, 362, 363, 364, 903, 964, -110, + -110, -110,-32766, 14, 365, 841, 366, 929, 1266, 15, + 367, 716, -253, 368, 369,-32766,-32766,-32766, 371,-32766, + 441,-32766, 563,-32766, 16, 18,-32766, 408, 490, 491, + 929,-32766,-32766,-32766, 716, -252, 498,-32766,-32766, 501, + -110, -110, 502,-32766, 424, -110, 503, 504, 508, 509, + 510, 518, 596, 702, -110,-32766, 1074, 1215, 1295, 1073, + 1054, 1254, 1050,-32766, -280, -102, 12, 17, 22, 297, + 407, 610, 615, 643, 708, 1219, 1272, 1216, 1352, 0, + 324, 373, 717, 720, 724, 300, 725, 727, 74, 728, + 1232, 729, 730, 734, 330, 409, 719, 0, 413, 737, + 904, 1377, 1379, 863, 862, 958, 1001, 1378, 957, 955, + 956, 959, 1247, 937, 947, 935, 991, 992, 641, 1376, + 1333, 1322, 1340, 1349, 0, 0, 1298, 0, 330 ); protected array $actionCheck = array( @@ -599,37 +598,37 @@ class Php7 extends \PhpParser\ParserAbstract 131, 132, 133, 134, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 16, 70, 106, 107, 70, 71, 80, 16, 1, 83, 117, 118, - 116, 16, 163, 122, 82, 84, 167, 168, 86, 73, - 16, 163, 131, 106, 107, 167, 80, 59, 60, 75, - 76, 163, 116, 116, 16, 167, 31, 106, 70, 108, + 116, 16, 163, 122, 82, 84, 167, 168, 86, 106, + 107, 163, 131, 75, 76, 167, 16, 59, 60, 116, + 16, 163, 116, 106, 107, 167, 31, 106, 70, 108, 1, 167, 16, 163, 113, 171, 31, 167, 117, 118, 101, 102, 35, 122, 122, 31, 162, 141, 37, 38, - 31, 130, 131, 132, 133, 134, 137, 138, 122, 30, + 31, 130, 131, 132, 133, 134, 137, 138, 31, 30, 1, 139, 140, 31, 142, 143, 144, 145, 146, 147, 148, 165, 153, 106, 107, 154, 80, 155, 156, 84, 31, 37, 38, 31, 163, 74, 167, 165, 167, 168, 31, 80, 170, 171, 31, 137, 138, 30, 87, 88, - 89, 31, 91, 31, 93, 31, 95, 106, 107, 98, + 89, 31, 91, 31, 93, 31, 95, 31, 31, 98, 31, 153, 116, 31, 103, 104, 105, 31, 74, 31, - 109, 110, 31, 31, 80, 167, 115, 116, 70, 71, - 31, 87, 88, 89, 31, 91, 140, 93, 127, 95, + 109, 110, 72, 73, 80, 167, 115, 116, 70, 71, + 80, 87, 88, 89, 31, 91, 140, 93, 127, 95, 82, 82, 98, 31, 86, 116, 31, 103, 104, 105, 111, 112, 35, 109, 110, 159, 160, 161, 163, 115, 116, 35, 167, 70, 71, 35, 35, 35, 35, 158, - 141, 127, 37, 37, 37, 82, 117, 118, 70, 86, - 122, 122, 38, 116, 57, 69, 77, 80, 70, 83, - 131, 80, 82, 89, 165, 82, 94, 92, 140, 140, - 142, 143, 144, 145, 146, 147, 148, 85, 141, 90, - 31, 97, 114, 155, 156, 122, 96, 136, 97, 135, - 97, 162, 135, 165, 165, 100, 131, 150, 170, 171, + 141, 127, 122, 37, 37, 82, 117, 118, 70, 86, + 122, 122, 37, 116, 38, 57, 70, 69, 77, 80, + 131, 85, 82, 80, 165, 90, 82, 96, 140, 140, + 142, 143, 144, 145, 146, 147, 148, 83, 141, 89, + 31, 92, 113, 155, 156, 122, 94, 136, 97, 135, + 97, 162, 97, 165, 165, 131, 135, 100, 170, 171, 171, 153, 165, 140, 100, 142, 143, 144, 145, 146, - 147, 148, 113, 31, 150, 137, 138, 157, 155, 156, - 153, 162, 167, 74, 153, 159, -1, 157, 165, 80, - -1, 153, -1, 170, 171, -1, 87, 88, 89, -1, - 91, -1, 93, -1, 95, 167, -1, 98, 140, -1, - -1, 153, 103, 104, 105, 1, 74, 163, 109, 110, - -1, -1, 80, 153, 115, 116, -1, 158, -1, 87, - 88, 89, -1, 91, 163, 93, 127, 95, 1, 163, + 147, 148, 140, 31, 157, 137, 138, 150, 155, 156, + 150, 153, 114, 74, 158, 163, 166, 153, 165, 80, + 153, 153, 167, 170, 171, -1, 87, 88, 89, -1, + 91, -1, 93, -1, 95, 167, -1, 98, -1, -1, + -1, -1, 103, 104, 105, 1, 74, -1, 109, 110, + -1, 162, 80, 153, 115, 116, 157, -1, 163, 87, + 88, 89, 159, 91, 163, 93, 127, 95, 1, 165, 98, 163, 163, 163, 163, 103, 104, 105, 163, 74, 163, 109, 110, 163, 163, 80, 163, 115, 116, 70, 163, 163, 87, 88, 89, 163, 91, 163, 93, 127, @@ -645,24 +644,23 @@ class Php7 extends \PhpParser\ParserAbstract 165, 165, 165, 165, 165, 165, 165, 130, 131, 132, 133, 134, 74, 166, 165, 82, 165, 163, 80, 166, 165, 167, 168, 165, 165, 87, 88, 89, 165, 91, - 165, 93, 165, 95, 165, 167, 98, 166, 166, 166, + 165, 93, 165, 95, 166, 166, 98, 166, 166, 166, 163, 103, 104, 105, 167, 168, 166, 109, 110, 166, 117, 118, 166, 115, 116, 122, 166, 166, 166, 166, 166, 166, 166, 166, 131, 127, 166, 166, 166, 166, 166, 166, 166, 140, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, -1, 167, 167, 162, 167, 167, 165, 167, - 169, 167, 167, 167, 171, 168, 167, 167, 167, -1, + 166, 166, 166, 166, 166, 166, 166, 166, 166, -1, + 167, 167, 167, 167, 167, 162, 167, 167, 165, 167, + 169, 167, 167, 167, 171, 168, 167, -1, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, -1, -1, 170, -1, - 171 + 168, 168, 168, 168, -1, -1, 170, -1, 171 ); protected array $actionBase = array( 0, -2, 156, 559, 641, 1004, 1027, 485, 292, 200, -60, 283, 568, 590, 590, 715, 590, 195, 578, 901, - 395, 395, 395, 831, 313, 313, 831, 313, 731, 731, + 395, 395, 395, 833, 313, 313, 833, 313, 731, 731, 731, 731, 764, 764, 965, 965, 998, 932, 899, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, @@ -676,9 +674,9 @@ class Php7 extends \PhpParser\ParserAbstract 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, - 1088, 1088, 1088, 37, 360, 216, 649, 1066, 1072, 1068, - 1073, 1064, 1063, 1067, 1069, 1074, 1113, 1114, 835, 1115, - 1116, 1112, 1117, 1070, 919, 1065, 1071, 297, 297, 297, + 1088, 1088, 1088, 37, 360, 216, 649, 1063, 1069, 1065, + 1070, 1061, 1060, 1064, 1066, 1071, 1111, 1112, 835, 1113, + 1114, 1110, 1115, 1067, 919, 1062, 1068, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 135, 477, 126, 201, 201, 201, @@ -690,48 +688,48 @@ class Php7 extends \PhpParser\ParserAbstract 139, 139, 139, 227, -55, 749, 380, -40, 787, 604, 626, 626, 536, 536, 478, 478, 349, 349, 478, 478, 478, 465, 465, 465, 465, 415, 494, 519, 43, 366, - 858, 584, 584, 584, 584, 858, 858, 858, 858, 814, - 1118, 858, 858, 858, 639, 828, 828, 979, 452, 452, - 452, 828, 370, -70, -70, 370, 601, -70, 511, 987, - 634, 999, 397, 815, 627, 434, 397, 299, 455, 502, - 233, 816, 687, 816, 1062, 842, 842, 802, 739, 902, - 1091, 1075, 845, 1110, 854, 1111, 470, 10, 734, 1061, - 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061, - 1119, 632, 1062, -3, 1119, 1119, 1119, 632, 632, 632, - 632, 632, 632, 632, 632, 806, 632, 632, 759, -3, - 612, 664, -3, 853, 632, 817, 37, 37, 37, 37, + 822, 584, 584, 584, 584, 822, 822, 822, 822, 820, + 1116, 822, 986, 991, 822, 822, 639, 828, 828, 979, + 452, 452, 452, 828, 370, -70, -70, 370, 601, -70, + 511, 634, 397, 814, 623, 434, 397, 299, 455, 502, + 233, 863, 637, 863, 1059, 826, 826, 796, 739, 902, + 1089, 1072, 847, 1108, 854, 1109, 470, 10, 734, 1058, + 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, + 1117, 632, 1059, -3, 1117, 1117, 1117, 632, 632, 632, + 632, 632, 632, 632, 632, 797, 632, 632, 759, -3, + 612, 658, -3, 853, 632, 818, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, -12, 37, 37, 360, 5, 5, 37, 142, 53, 5, 5, 5, 5, - 37, 37, 37, 37, 687, 847, 810, 721, -18, 820, - 120, 847, 847, 847, 26, 136, 115, 727, 837, 259, - 827, 827, 827, 833, 947, 947, 827, 830, 827, 833, - 827, 827, 947, 947, 809, 947, 217, 509, 430, 500, - 514, 947, 356, 827, 827, 827, 827, 807, 947, 75, - 535, 827, 286, 234, 827, 827, 807, 804, 812, 801, - 947, 947, 947, 807, 496, 801, 801, 801, 866, 868, - 849, 811, 390, 375, 562, 163, 864, 811, 811, 827, - 503, 849, 811, 849, 811, 859, 811, 811, 811, 849, - 811, 830, 456, 811, 699, 705, 541, 113, 811, 14, - 958, 959, 617, 966, 954, 974, 1017, 975, 976, 1077, - 944, 985, 955, 977, 1019, 953, 950, 832, 651, 655, - 821, 798, 935, 836, 836, 836, 930, 933, 836, 836, - 836, 836, 836, 836, 836, 836, 651, 907, 860, 824, - 988, 657, 667, 1051, 797, 1094, 1081, 987, 958, 976, - 725, 955, 977, 953, 950, 799, 794, 790, 792, 783, - 772, 752, 769, 808, 1053, 978, 844, 692, 1023, 989, - 1093, 1018, 990, 991, 1030, 1054, 869, 1055, 1095, 838, - 1096, 1097, 909, 1001, 1079, 836, 929, 897, 912, 999, - 934, 651, 913, 1056, 997, 805, 1033, 1036, 1076, 841, - 826, 918, 1098, 1005, 1008, 1009, 1080, 1082, 861, 1003, - 900, 1040, 843, 1087, 1041, 1042, 1043, 1044, 1084, 1099, - 1085, 925, 1086, 870, 839, 931, 840, 1100, 307, 851, - 852, 857, 1015, 591, 986, 1089, 1092, 1101, 1045, 1046, - 1047, 1102, 1103, 982, 871, 1021, 822, 1022, 964, 875, - 877, 606, 856, 1058, 846, 850, 855, 640, 644, 1104, - 1105, 1106, 983, 819, 829, 880, 881, 1059, 638, 1060, - 1107, 646, 883, 1108, 1052, 714, 728, 560, 624, 602, - 736, 825, 1090, 848, 818, 834, 1013, 728, 823, 887, - 1109, 888, 892, 894, 1050, 898, 0, 0, 0, 0, + 37, 37, 37, 37, 637, 848, 807, 687, -18, 859, + 120, 848, 848, 848, 26, 136, 115, 727, 837, 259, + 829, 829, 829, 834, 944, 944, 829, 830, 829, 834, + 829, 829, 944, 944, 849, 944, 217, 509, 430, 500, + 514, 944, 356, 829, 829, 829, 829, 811, 944, 75, + 535, 829, 286, 234, 829, 829, 811, 804, 806, 801, + 944, 944, 944, 811, 496, 801, 801, 801, 861, 868, + 819, 802, 390, 375, 562, 163, 866, 802, 802, 829, + 503, 819, 802, 819, 802, 816, 802, 802, 802, 819, + 802, 830, 456, 802, 699, 705, 541, 113, 802, 14, + 955, 958, 617, 959, 953, 966, 1015, 974, 975, 1075, + 935, 983, 954, 976, 1017, 950, 947, 832, 651, 655, + 824, 798, 934, 838, 838, 838, 929, 930, 838, 838, + 838, 838, 838, 838, 838, 838, 651, 907, 860, 840, + 987, 657, 667, 1046, 817, 1092, 1081, 986, 955, 975, + 725, 954, 976, 950, 947, 794, 792, 783, 790, 772, + 769, 747, 752, 799, 1050, 977, 812, 692, 1019, 988, + 1091, 1073, 989, 990, 1021, 1051, 869, 1052, 1093, 836, + 1094, 1095, 909, 999, 1076, 838, 925, 864, 912, 991, + 933, 651, 913, 1053, 964, 815, 1022, 1023, 1074, 843, + 844, 918, 1096, 1001, 1005, 1008, 1077, 1079, 855, 997, + 810, 1030, 845, 1087, 1033, 1036, 1040, 1041, 1080, 1097, + 1082, 897, 1084, 870, 825, 900, 821, 1098, 307, 851, + 852, 865, 1013, 591, 985, 1085, 1090, 1099, 1042, 1043, + 1044, 1100, 1101, 978, 871, 1003, 842, 1018, 931, 875, + 877, 606, 857, 1054, 846, 850, 856, 640, 644, 1102, + 1103, 1104, 982, 808, 831, 880, 881, 1055, 638, 1056, + 1105, 646, 883, 1106, 1047, 720, 724, 560, 624, 602, + 736, 839, 1086, 827, 858, 841, 1009, 724, 823, 887, + 1107, 888, 892, 894, 1045, 898, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, 468, 468, 468, @@ -760,34 +758,34 @@ class Php7 extends \PhpParser\ParserAbstract 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 716, 716, 297, 297, 297, 297, 716, 716, 716, 716, 716, 716, 716, 716, 716, 716, 297, 297, - 0, 297, 297, 297, 297, 297, 297, 297, 297, 809, + 0, 297, 297, 297, 297, 297, 297, 297, 297, 849, 716, 716, 716, 716, 452, 452, 452, 452, -95, -95, 716, 716, 601, 716, 601, 716, 716, 452, 452, 716, 716, 716, 716, 716, 716, 716, 716, 716, 716, 716, 0, 0, 0, -3, -70, 716, 830, 830, 830, 830, - 716, 716, 716, 716, -70, -70, 716, 716, 716, 0, - 0, 0, 0, 0, 0, 0, 0, -3, 0, 0, - -3, 0, 0, 830, 656, 830, 656, 716, 601, 809, + 716, 716, 716, 716, -70, -70, 716, 770, 770, 716, + 716, 0, 0, 0, 0, 0, 0, 0, 0, -3, + 0, 0, -3, 0, 0, 830, 830, 716, 601, 849, 374, 716, 0, 0, 0, 0, -3, 830, -3, 632, -70, -70, 632, 632, 5, 37, 374, 659, 659, 659, - 659, 0, 0, 687, 809, 809, 809, 809, 809, 809, - 809, 809, 809, 809, 809, 830, 0, 809, 0, 830, + 659, 0, 0, 637, 849, 849, 849, 849, 849, 849, + 849, 849, 849, 849, 849, 830, 0, 849, 0, 830, 830, 830, 0, 0, 0, 0, 0, 0, 0, 0, - 947, 0, 0, 0, 0, 0, 0, 0, 830, 0, - 947, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 944, 0, 0, 0, 0, 0, 0, 0, 830, 0, + 944, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 830, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 836, 841, 0, 0, 841, 0, 836, 836, 836, 0, - 0, 0, 856, 638 + 838, 843, 0, 0, 843, 0, 838, 838, 838, 0, + 0, 0, 857, 638 ); protected array $actionDefault = array( 3,32767, 102,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 100,32767, 619, 619, - 619, 619,32767,32767, 256, 102,32767,32767, 488, 405, - 405, 405,32767,32767, 561, 561, 561, 561, 561,32767, - 32767,32767,32767,32767,32767, 488,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 100,32767, 620, 620, + 620, 620,32767,32767, 257, 102,32767,32767, 489, 406, + 406, 406,32767,32767, 562, 562, 562, 562, 562,32767, + 32767,32767,32767,32767,32767, 489,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, @@ -795,138 +793,143 @@ class Php7 extends \PhpParser\ParserAbstract 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767, 36, 7, - 8, 10, 11, 49, 17, 329, 100,32767,32767,32767, + 8, 10, 11, 49, 17, 330, 100,32767,32767,32767, 32767,32767,32767,32767,32767, 102,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 612,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 613,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 393, 492, 471, - 472, 474, 475, 404, 562, 618, 332, 615, 334, 403, - 146, 344, 335, 244, 260, 493, 261, 494, 497, 498, - 217, 390, 150, 151, 435, 489, 437, 487, 491, 436, - 410, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 408, 409, 490,32767,32767, 468, - 467, 466, 433,32767,32767,32767,32767,32767,32767,32767, - 32767, 102,32767, 434, 438, 407, 441, 439, 440, 457, - 458, 455, 456, 459,32767,32767, 321,32767,32767, 460, - 461, 462, 463, 371, 369,32767,32767, 111, 321, 111, - 32767,32767, 448, 449,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 505, 555, 465,32767,32767, + 32767,32767,32767,32767,32767,32767,32767, 394, 493, 472, + 473, 475, 476, 405, 563, 619, 333, 616, 335, 404, + 146, 345, 336, 245, 261, 494, 262, 495, 498, 499, + 218, 391, 150, 151, 436, 490, 438, 488, 492, 437, + 411, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 409, 410, 491,32767,32767, 469, + 468, 467, 434,32767,32767,32767,32767,32767,32767,32767, + 32767, 102,32767, 435, 439, 408, 442, 440, 441, 458, + 459, 456, 457, 460,32767,32767, 322,32767,32767, 461, + 462, 463, 464, 372, 370,32767,32767, 111, 322, 111, + 32767,32767, 449, 450,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767, 506, 556, 466,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767, 102,32767, 100, 557, 430, 432, 525, 443, 444, - 442, 411,32767, 530,32767, 102,32767, 532,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 556,32767, 563, - 563,32767, 518, 100, 196,32767, 531, 196, 196,32767, - 32767,32767,32767,32767,32767,32767,32767, 626, 518, 110, + 32767, 102,32767,32767,32767, 100, 558, 431, 433, 526, + 444, 445, 443, 412,32767, 531,32767, 102,32767, 533, + 32767,32767,32767,32767,32767,32767,32767, 557,32767, 564, + 564,32767, 519, 100, 196,32767, 532, 196, 196,32767, + 32767,32767,32767,32767,32767,32767,32767, 627, 519, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 32767, 196, 110,32767,32767,32767, 100, 196, 196, 196, - 196, 196, 196, 196, 196, 533, 196, 196, 191,32767, - 270, 272, 102, 580, 196, 535,32767,32767,32767,32767, + 196, 196, 196, 196, 196, 534, 196, 196, 191,32767, + 271, 273, 102, 581, 196, 536,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 518, 453, 139,32767, 520, 139, - 563, 445, 446, 447, 563, 563, 563, 317, 294,32767, - 32767,32767,32767,32767, 533, 533, 100, 100, 100, 100, - 32767,32767,32767,32767, 111, 504, 99, 99, 99, 99, - 99, 103, 101,32767,32767,32767,32767, 225,32767, 101, - 99,32767, 101, 101,32767,32767, 225, 227, 214, 229, - 32767, 584, 585, 225, 101, 229, 229, 229, 249, 249, - 507, 323, 101, 99, 101, 101, 198, 323, 323,32767, - 101, 507, 323, 507, 323, 200, 323, 323, 323, 507, - 323,32767, 101, 323, 216, 393, 99, 99, 323,32767, - 32767,32767, 520,32767,32767,32767,32767,32767,32767,32767, - 224,32767,32767,32767,32767,32767,32767,32767,32767, 550, - 32767, 568, 582, 451, 452, 454, 567, 565, 476, 477, - 478, 479, 480, 481, 482, 484, 614,32767, 524,32767, - 32767,32767, 343,32767, 624,32767,32767,32767, 9, 74, - 513, 42, 43, 51, 57, 539, 540, 541, 542, 536, - 537, 543, 538,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767,32767, 625,32767, - 563,32767,32767,32767,32767, 450, 545, 590,32767,32767, - 564, 617,32767,32767,32767,32767,32767,32767,32767, 139, + 32767,32767,32767,32767, 519, 454, 139,32767, 521, 139, + 564, 446, 447, 448, 564, 564, 564, 318, 295,32767, + 32767,32767,32767,32767, 534, 534, 100, 100, 100, 100, + 32767,32767,32767,32767, 111, 505, 99, 99, 99, 99, + 99, 103, 101,32767,32767,32767,32767, 226,32767, 101, + 99,32767, 101, 101,32767,32767, 226, 228, 215, 230, + 32767, 585, 586, 226, 101, 230, 230, 230, 250, 250, + 508, 324, 101, 99, 101, 101, 198, 324, 324,32767, + 101, 508, 324, 508, 324, 200, 324, 324, 324, 508, + 324,32767, 101, 324, 217, 394, 99, 99, 324,32767, + 32767,32767, 521,32767,32767,32767,32767,32767,32767,32767, + 225,32767,32767,32767,32767,32767,32767,32767,32767, 551, + 32767, 569, 583, 452, 453, 455, 568, 566, 477, 478, + 479, 480, 481, 482, 483, 485, 615,32767, 525,32767, + 32767,32767, 344,32767, 625,32767,32767,32767, 9, 74, + 514, 42, 43, 51, 57, 540, 541, 542, 543, 537, + 538, 544, 539,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 626,32767, + 564,32767,32767,32767,32767, 451, 546, 591,32767,32767, + 565, 618,32767,32767,32767,32767,32767,32767,32767, 139, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 550,32767, 137,32767,32767,32767,32767,32767,32767,32767, - 32767, 546,32767,32767,32767, 563,32767,32767,32767,32767, - 319, 316,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767,32767, 563,32767, - 32767,32767,32767,32767, 296,32767, 313,32767,32767,32767, + 551,32767, 137,32767,32767,32767,32767,32767,32767,32767, + 32767, 547,32767,32767,32767, 564,32767,32767,32767,32767, + 320, 317,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 564,32767, + 32767,32767,32767,32767, 297,32767, 314,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 389, 520, 299, 301, 302, - 32767,32767,32767,32767, 365,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767, 390, 521, 300, 302, 303, + 32767,32767,32767,32767, 366,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767, 153, 153, 3, 3, - 346, 153, 153, 153, 346, 346, 153, 346, 346, 346, - 153, 153, 153, 153, 153, 153, 282, 186, 264, 267, - 249, 249, 153, 357, 153 + 347, 153, 153, 153, 347, 347, 153, 347, 347, 347, + 153, 153, 153, 153, 153, 153, 283, 186, 265, 268, + 250, 250, 153, 358, 153 ); protected array $goto = array( - 196, 196, 1045, 1076, 703, 468, 590, 473, 473, 858, - 739, 644, 646, 1209, 859, 666, 473, 833, 712, 690, - 693, 1018, 701, 710, 1014, 423, 353, 166, 166, 166, + 196, 196, 1046, 920, 703, 921, 661, 662, 590, 679, + 680, 681, 739, 644, 646, 1077, 429, 666, 619, 858, + 712, 690, 693, 1019, 701, 710, 1015, 166, 166, 166, 166, 220, 197, 193, 193, 176, 178, 215, 193, 193, 193, 193, 193, 194, 194, 194, 194, 194, 188, 189, 190, 191, 192, 217, 215, 218, 543, 544, 425, 545, - 548, 549, 550, 551, 552, 553, 554, 555, 1160, 167, + 548, 549, 550, 551, 552, 553, 554, 555, 1161, 167, 168, 169, 195, 170, 171, 172, 165, 173, 174, 175, 177, 214, 216, 219, 239, 242, 253, 254, 256, 257, 258, 259, 260, 261, 262, 263, 269, 270, 271, 272, - 282, 283, 318, 319, 320, 431, 432, 433, 605, 221, + 282, 283, 320, 321, 322, 431, 432, 433, 605, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 179, 236, 180, 188, 189, 190, - 191, 192, 217, 1160, 198, 199, 200, 201, 240, 181, + 191, 192, 217, 1161, 198, 199, 200, 201, 240, 181, 182, 202, 183, 203, 199, 184, 241, 198, 164, 204, 205, 185, 206, 207, 208, 186, 209, 210, 187, 211, - 212, 213, 279, 277, 279, 279, 861, 983, 411, 412, - 920, 607, 921, 677, 854, 678, 854, 416, 417, 418, - 357, 691, 345, 463, 419, 463, 435, 668, 893, 349, - 357, 357, 430, 321, 315, 316, 339, 600, 434, 340, - 436, 645, 485, 597, 357, 357, 346, 345, 357, 487, - 351, 1382, 916, 911, 912, 925, 867, 913, 864, 914, - 915, 865, 868, 562, 919, 872, 357, 357, 429, 871, - 619, 854, 445, 1355, 630, 630, 1098, 1093, 1094, 1095, - 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, + 212, 213, 279, 277, 279, 279, 861, 435, 668, 859, + 5, 607, 6, 430, 323, 317, 318, 339, 600, 434, + 340, 436, 645, 630, 630, 900, 857, 900, 900, 1296, + 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 833, + 357, 556, 556, 556, 556, 984, 611, 345, 628, 665, + 357, 357, 916, 911, 912, 925, 867, 913, 864, 914, + 915, 865, 868, 423, 919, 872, 357, 357, 485, 871, + 357, 353, 1383, 346, 345, 487, 1099, 1094, 1095, 1096, + 473, 473, 893, 562, 1315, 1315, 357, 357, 351, 473, + 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, + 1265, 1046, 1265, 1265, 398, 401, 608, 612, 597, 468, + 1046, 1265, 1356, 1046, 700, 1046, 1046, 1210, 835, 1046, + 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, + 700, 1241, 953, 700, 1327, 1265, 1242, 1245, 954, 1246, + 1265, 1265, 1265, 1265, 567, 560, 1265, 1119, 1120, 1265, + 1265, 1348, 1348, 1348, 1348, 558, 515, 558, 558, 1005, + 1049, 1049, 949, 949, 688, 961, 558, 933, 1041, 1057, + 1058, 934, 396, 875, 312, 560, 567, 592, 593, 313, + 603, 609, 595, 624, 625, 463, 667, 463, 562, 887, + 461, 25, 874, 1052, 1051, 978, 978, 978, 978, 1343, + 1344, 461, 1312, 1312, 972, 979, 1055, 1056, 1312, 1312, + 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 547, 547, + 356, 356, 356, 356, 547, 547, 547, 547, 547, 547, + 547, 547, 547, 547, 546, 546, 445, 1366, 1366, 1158, + 546, 1070, 546, 546, 546, 546, 546, 546, 546, 546, + 1022, 1022, 1258, 249, 249, 329, 310, 1366, 443, 888, + 876, 1082, 1086, 454, 454, 839, 454, 454, 1338, 689, + 1338, 1338, 987, 1369, 1369, 482, 1341, 1342, 673, 1338, + 247, 247, 247, 247, 244, 250, 506, 854, 507, 854, + 561, 587, 561, 851, 513, 977, 561, 623, 587, 341, + 399, 467, 601, 622, 1350, 1350, 1350, 1350, 839, 967, + 839, 405, 877, 476, 604, 477, 478, 880, 1131, 892, + 1256, 885, 354, 355, 1374, 1375, 1027, 411, 412, 976, + 414, 711, 677, 1334, 678, 1260, 416, 417, 418, 1083, + 691, 406, 1008, 419, 854, 980, 742, 738, 349, 883, + 559, 1017, 1012, 638, 640, 642, 483, 1087, 454, 454, + 454, 454, 454, 454, 454, 454, 454, 454, 454, 889, + 989, 454, 1037, 1085, 1133, 0, 0, 1336, 1336, 1085, 617, 631, 634, 635, 636, 637, 658, 659, 660, 714, - 1264, 1045, 1264, 1264, 661, 662, 1004, 679, 680, 681, - 1045, 1264, 396, 1045, 1326, 1045, 1045, 354, 355, 1045, - 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, - 900, 857, 900, 900, 595, 1264, 515, 506, 667, 507, - 1264, 1264, 1264, 1264, 1069, 513, 1264, 1264, 1264, 1347, - 1347, 1347, 1347, 567, 560, 356, 356, 356, 356, 1157, - 5, 558, 6, 558, 558, 628, 665, 933, 562, 1051, - 1050, 934, 558, 556, 556, 556, 556, 949, 611, 949, - 482, 1340, 1341, 329, 560, 567, 592, 593, 331, 603, - 609, 854, 624, 625, 249, 249, 461, 975, 414, 711, - 25, 977, 977, 977, 977, 1314, 1314, 461, 971, 978, - 443, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, - 1314, 247, 247, 247, 247, 244, 250, 1311, 1311, 1118, - 1119, 839, 1257, 1311, 1311, 1311, 1311, 1311, 1311, 1311, - 1311, 1311, 1311, 547, 547, 398, 401, 608, 612, 547, - 547, 547, 547, 547, 547, 547, 547, 547, 547, 638, - 640, 642, 689, 454, 454, 673, 454, 454, 1337, 1259, - 1337, 1337, 546, 546, 839, 341, 839, 851, 546, 1337, - 546, 546, 546, 546, 546, 546, 546, 546, 561, 587, - 561, 623, 1007, 405, 561, 979, 587, 738, 399, 467, - 559, 1016, 1011, 966, 1349, 1349, 1349, 1349, 1054, 1055, - 880, 476, 604, 477, 478, 877, 1365, 1365, 437, 885, - 1255, 700, 1373, 1374, 1082, 835, 1260, 1261, 742, 1247, - 437, 1333, 875, 1026, 1365, 849, 406, 700, 1052, 1052, - 700, 889, 1247, 672, 1063, 1059, 1060, 883, 887, 327, - 310, 874, 1368, 1368, 1262, 1323, 1324, 483, 454, 454, - 454, 454, 454, 454, 454, 454, 454, 454, 454, 1342, - 1343, 454, 613, 1084, 1086, 938, 1147, 1335, 1335, 1084, - 601, 622, 1021, 1021, 988, 1036, 1132, 1023, 888, 876, - 1081, 1085, 0, 0, 0, 879, 0, 671, 1002, 0, - 0, 986, 0, 873, 1048, 1048, 0, 0, 688, 960, - 606, 1111, 1040, 1056, 1057, 1254, 273, 326, 0, 326, - 326, 715, 0, 0, 976, 0, 514, 706, 0, 1109, - 252, 252, 1240, 952, 0, 0, 0, 1241, 1244, 953, - 1245, 0, 0, 0, 0, 0, 0, 1130, 892 + 0, 0, 1261, 1262, 0, 1248, 0, 0, 0, 0, + 613, 849, 0, 938, 1148, 0, 0, 437, 1248, 0, + 0, 0, 0, 0, 0, 1024, 0, 0, 0, 437, + 1263, 1324, 1325, 879, 0, 671, 1003, 1053, 1053, 606, + 1112, 873, 672, 1064, 1060, 1061, 0, 0, 0, 0, + 715, 0, 0, 1255, 0, 514, 706, 0, 1110, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 854, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 273, 328, 0, 328, 328, 0, 0, 0, 252, + 252 ); protected array $gotoCheck = array( - 42, 42, 73, 128, 73, 156, 48, 154, 154, 26, - 48, 48, 48, 156, 27, 48, 154, 6, 9, 48, - 48, 48, 48, 48, 48, 43, 97, 42, 42, 42, + 42, 42, 73, 65, 73, 65, 86, 86, 48, 86, + 86, 86, 48, 48, 48, 128, 13, 48, 13, 26, + 9, 48, 48, 48, 48, 48, 48, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, @@ -940,96 +943,101 @@ class Php7 extends \PhpParser\ParserAbstract 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 42, 23, 23, 23, 23, 15, 49, 82, 82, - 65, 131, 65, 82, 22, 82, 22, 82, 82, 82, - 14, 82, 174, 83, 82, 83, 66, 66, 45, 82, - 14, 14, 66, 66, 66, 66, 66, 66, 66, 66, - 66, 66, 84, 178, 14, 14, 174, 174, 14, 84, - 185, 14, 15, 15, 15, 15, 15, 15, 15, 15, - 15, 15, 15, 14, 15, 15, 14, 14, 13, 15, - 13, 22, 83, 187, 108, 108, 15, 15, 15, 15, - 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, - 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, - 73, 73, 73, 73, 86, 86, 103, 86, 86, 86, - 73, 73, 62, 73, 14, 73, 73, 97, 97, 73, + 42, 42, 23, 23, 23, 23, 15, 66, 66, 27, + 46, 131, 46, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 108, 108, 25, 25, 25, 25, 108, + 108, 108, 108, 108, 108, 108, 108, 108, 108, 6, + 14, 107, 107, 107, 107, 49, 107, 174, 56, 56, + 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 43, 15, 15, 14, 14, 84, 15, + 14, 97, 14, 174, 174, 84, 15, 15, 15, 15, + 154, 154, 45, 14, 176, 176, 14, 14, 185, 154, + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 73, 73, 73, 73, 59, 59, 59, 59, 178, 156, + 73, 73, 187, 73, 7, 73, 73, 156, 7, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, - 25, 25, 25, 25, 104, 73, 14, 160, 64, 160, - 73, 73, 73, 73, 115, 160, 73, 73, 73, 9, - 9, 9, 9, 76, 76, 24, 24, 24, 24, 155, - 46, 19, 46, 19, 19, 56, 56, 73, 14, 119, - 119, 73, 19, 107, 107, 107, 107, 9, 107, 9, - 182, 182, 182, 76, 76, 76, 76, 76, 76, 76, - 76, 22, 76, 76, 5, 5, 19, 93, 93, 93, - 76, 19, 19, 19, 19, 176, 176, 19, 19, 19, - 113, 176, 176, 176, 176, 176, 176, 176, 176, 176, - 176, 5, 5, 5, 5, 5, 5, 177, 177, 145, - 145, 12, 14, 177, 177, 177, 177, 177, 177, 177, - 177, 177, 177, 179, 179, 59, 59, 59, 59, 179, - 179, 179, 179, 179, 179, 179, 179, 179, 179, 85, - 85, 85, 117, 23, 23, 121, 23, 23, 131, 20, - 131, 131, 162, 162, 12, 29, 12, 18, 162, 131, - 162, 162, 162, 162, 162, 162, 162, 162, 9, 9, - 9, 80, 50, 28, 9, 50, 9, 50, 9, 9, - 50, 50, 50, 92, 131, 131, 131, 131, 120, 120, - 39, 9, 9, 9, 9, 37, 188, 188, 118, 9, - 166, 7, 9, 9, 130, 7, 20, 20, 99, 20, - 118, 131, 35, 110, 188, 20, 31, 7, 118, 118, - 7, 41, 20, 118, 118, 118, 118, 9, 35, 175, - 175, 35, 188, 188, 20, 20, 20, 157, 23, 23, - 23, 23, 23, 23, 23, 23, 23, 23, 23, 184, - 184, 23, 17, 131, 133, 17, 17, 131, 131, 131, - 2, 2, 107, 107, 96, 114, 148, 17, 16, 16, - 16, 16, -1, -1, -1, 17, -1, 17, 17, -1, - -1, 16, -1, 17, 89, 89, -1, -1, 89, 89, - 8, 8, 89, 89, 89, 17, 24, 24, -1, 24, - 24, 8, -1, -1, 16, -1, 8, 8, -1, 8, - 5, 5, 79, 79, -1, -1, -1, 79, 79, 79, - 79, -1, -1, -1, -1, -1, -1, 16, 16 + 7, 79, 79, 7, 14, 73, 79, 79, 79, 79, + 73, 73, 73, 73, 76, 76, 73, 145, 145, 73, + 73, 9, 9, 9, 9, 19, 14, 19, 19, 103, + 89, 89, 9, 9, 89, 89, 19, 73, 89, 89, + 89, 73, 62, 35, 76, 76, 76, 76, 76, 76, + 76, 76, 104, 76, 76, 83, 64, 83, 14, 35, + 19, 76, 35, 119, 119, 19, 19, 19, 19, 184, + 184, 19, 177, 177, 19, 19, 120, 120, 177, 177, + 177, 177, 177, 177, 177, 177, 177, 177, 179, 179, + 24, 24, 24, 24, 179, 179, 179, 179, 179, 179, + 179, 179, 179, 179, 162, 162, 83, 188, 188, 155, + 162, 115, 162, 162, 162, 162, 162, 162, 162, 162, + 107, 107, 14, 5, 5, 175, 175, 188, 113, 16, + 16, 16, 16, 23, 23, 12, 23, 23, 131, 117, + 131, 131, 16, 188, 188, 182, 182, 182, 121, 131, + 5, 5, 5, 5, 5, 5, 160, 22, 160, 22, + 9, 9, 9, 18, 160, 16, 9, 80, 9, 29, + 9, 9, 2, 2, 131, 131, 131, 131, 12, 92, + 12, 28, 37, 9, 9, 9, 9, 39, 16, 16, + 166, 9, 97, 97, 9, 9, 110, 82, 82, 93, + 93, 93, 82, 131, 82, 20, 82, 82, 82, 130, + 82, 31, 50, 82, 22, 50, 99, 50, 82, 9, + 50, 50, 50, 85, 85, 85, 157, 133, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 41, + 96, 23, 114, 131, 148, -1, -1, 131, 131, 131, + 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, + -1, -1, 20, 20, -1, 20, -1, -1, -1, -1, + 17, 20, -1, 17, 17, -1, -1, 118, 20, -1, + -1, -1, -1, -1, -1, 17, -1, -1, -1, 118, + 20, 20, 20, 17, -1, 17, 17, 118, 118, 8, + 8, 17, 118, 118, 118, 118, -1, -1, -1, -1, + 8, -1, -1, 17, -1, 8, 8, -1, 8, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 22, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 24, 24, -1, 24, 24, -1, -1, -1, 5, + 5 ); protected array $gotoBase = array( - 0, 0, -178, 0, 0, 353, 7, 474, 562, 8, - 0, 0, 93, -113, -119, -184, 91, 63, 126, 56, - 34, 0, -103, 159, 312, 287, 5, 10, 112, 137, - 0, 54, 0, 0, 0, 119, 0, 132, 0, 145, - 0, 55, -1, 2, 0, 162, -422, 0, -711, 149, - 440, 0, 0, 0, 0, 0, 285, 0, 0, 360, - 0, 0, 230, 0, 60, 156, -51, 0, 0, 0, - 0, 0, 0, -5, 0, 0, -34, 0, 0, 181, - 120, -110, -329, -94, -274, -66, -460, 0, 0, 284, - 0, 0, 130, 51, 0, 0, 96, -463, 0, 78, - 0, 0, 0, 231, 251, 0, 0, 305, -3, 0, - 121, 0, 0, 92, 30, 29, 0, 138, 212, 49, - 182, 134, 0, 0, 0, 0, 0, 0, 1, 0, - 108, 163, 0, 87, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 116, 0, 0, 97, 0, - 0, 0, 0, 0, -27, 75, -263, 72, 0, 0, - -204, 0, 195, 0, 0, 0, 109, 0, 0, 0, - 0, 0, 0, 0, -117, 186, 128, 150, 174, 166, - 0, 0, 38, 0, 155, 180, 0, 202, 167, 0, + 0, 0, -256, 0, 0, 412, 189, 267, 581, 10, + 0, 0, 127, -325, -99, -184, -38, 91, 142, 50, + 100, 0, 170, 159, 377, 182, 15, 165, 130, 161, + 0, 59, 0, 0, 0, -40, 0, 129, 0, 150, + 0, 83, -1, 200, 0, 216, -572, 0, -709, 187, + 490, 0, 0, 0, 0, 0, 168, 0, 0, 219, + 0, 0, 290, 0, 108, -11, -70, 0, 0, 0, + 0, 0, 0, -5, 0, 0, -43, 0, 0, -120, + 144, 180, -10, 68, -248, 28, -718, 0, 0, 40, + 0, 0, 136, 183, 0, 0, 82, -258, 0, 96, + 0, 0, 0, 284, 299, 0, 0, 173, -54, 0, + 114, 0, 0, 140, 17, 126, 0, 145, 301, 73, + 80, 147, 0, 0, 0, 0, 0, 0, 13, 0, + 123, 163, 0, 70, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 34, 0, 0, 85, 0, + 0, 0, 0, 0, 206, 155, 1, 71, 0, 0, + -55, 0, 157, 0, 0, 0, 109, 0, 0, 0, + 0, 0, 0, 0, -92, 90, 7, 125, 239, 141, + 0, 0, 133, 0, -15, 218, 0, 241, 88, 0, 0 ); protected array $gotoDefault = array( -32768, 519, 746, 4, 747, 942, 822, 831, 583, 537, - 713, 350, 632, 426, 1331, 918, 1146, 602, 850, 1273, - 1279, 462, 853, 334, 736, 930, 901, 902, 402, 389, + 713, 350, 632, 426, 1332, 918, 1147, 602, 850, 1274, + 1280, 462, 853, 334, 736, 930, 901, 902, 402, 389, 866, 400, 656, 633, 500, 886, 458, 878, 492, 881, 457, 890, 163, 422, 517, 894, 3, 897, 565, 928, - 981, 390, 905, 391, 684, 907, 586, 909, 910, 397, - 403, 404, 1151, 594, 629, 922, 255, 588, 923, 388, - 924, 932, 393, 395, 694, 472, 511, 505, 415, 1113, + 982, 390, 905, 391, 684, 907, 586, 909, 910, 397, + 403, 404, 1152, 594, 629, 922, 255, 588, 923, 388, + 924, 932, 393, 395, 694, 472, 511, 505, 415, 1114, 589, 616, 653, 451, 479, 627, 639, 626, 486, 438, - 420, 333, 965, 973, 493, 470, 987, 352, 995, 744, - 1159, 647, 495, 1003, 648, 1010, 1013, 538, 539, 484, - 1025, 266, 1028, 496, 1037, 23, 674, 1042, 1043, 675, - 649, 1065, 650, 676, 651, 1067, 469, 584, 1075, 459, - 1083, 1319, 460, 1087, 264, 1090, 278, 421, 439, 1096, - 1097, 9, 1103, 704, 705, 19, 274, 516, 1131, 695, - -32768,-32768,-32768,-32768, 456, 1158, 455, 1228, 1230, 566, - 497, 1248, 295, 1251, 687, 512, 1256, 452, 1322, 453, - 540, 480, 317, 541, 1366, 309, 337, 314, 557, 296, - 338, 542, 481, 1328, 1336, 335, 31, 1356, 1367, 599, + 420, 333, 966, 974, 493, 470, 988, 352, 996, 744, + 1160, 647, 495, 1004, 648, 1011, 1014, 538, 539, 484, + 1026, 266, 1029, 496, 1038, 23, 674, 1043, 1044, 675, + 649, 1066, 650, 676, 651, 1068, 469, 584, 1076, 459, + 1084, 1320, 460, 1088, 264, 1091, 278, 421, 439, 1097, + 1098, 9, 1104, 704, 705, 19, 274, 516, 1132, 695, + -32768,-32768,-32768,-32768, 456, 1159, 455, 1229, 1231, 566, + 497, 1249, 295, 1252, 687, 512, 1257, 452, 1323, 453, + 540, 480, 319, 541, 1367, 309, 337, 316, 557, 296, + 338, 542, 481, 1329, 1337, 335, 31, 1357, 1368, 599, 621 ); @@ -1054,27 +1062,27 @@ class Php7 extends \PhpParser\ParserAbstract 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 25, 25, 50, 69, 69, 72, 72, 71, 70, 70, 63, 75, 75, 76, 76, 77, 77, - 78, 78, 79, 79, 80, 80, 80, 26, 26, 27, - 27, 27, 27, 27, 88, 88, 90, 90, 83, 83, - 91, 91, 92, 92, 92, 84, 84, 87, 87, 85, - 85, 93, 94, 94, 57, 57, 65, 65, 68, 68, - 68, 67, 95, 95, 96, 58, 58, 58, 58, 97, - 97, 98, 98, 99, 99, 100, 101, 101, 102, 102, - 103, 103, 55, 55, 51, 51, 105, 53, 53, 106, - 52, 52, 54, 54, 64, 64, 64, 64, 81, 81, - 109, 109, 111, 111, 112, 112, 112, 112, 112, 112, - 112, 110, 110, 110, 115, 115, 115, 115, 89, 89, - 118, 118, 118, 119, 119, 116, 116, 120, 120, 122, - 122, 123, 123, 117, 124, 124, 121, 125, 125, 125, - 125, 113, 113, 82, 82, 82, 20, 20, 20, 127, - 126, 126, 128, 128, 128, 128, 60, 129, 129, 130, - 61, 132, 132, 133, 133, 134, 134, 86, 135, 135, - 135, 135, 135, 135, 135, 140, 140, 141, 141, 142, - 142, 142, 142, 142, 143, 144, 144, 139, 139, 136, - 136, 138, 138, 146, 146, 145, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 137, 147, 147, 149, 148, - 148, 150, 150, 114, 151, 151, 153, 153, 153, 152, - 152, 62, 104, 154, 154, 56, 56, 42, 42, 42, + 78, 78, 79, 79, 80, 80, 80, 80, 26, 26, + 27, 27, 27, 27, 27, 88, 88, 90, 90, 83, + 83, 91, 91, 92, 92, 92, 84, 84, 87, 87, + 85, 85, 93, 94, 94, 57, 57, 65, 65, 68, + 68, 68, 67, 95, 95, 96, 58, 58, 58, 58, + 97, 97, 98, 98, 99, 99, 100, 101, 101, 102, + 102, 103, 103, 55, 55, 51, 51, 105, 53, 53, + 106, 52, 52, 54, 54, 64, 64, 64, 64, 81, + 81, 109, 109, 111, 111, 112, 112, 112, 112, 112, + 112, 112, 110, 110, 110, 115, 115, 115, 115, 89, + 89, 118, 118, 118, 119, 119, 116, 116, 120, 120, + 122, 122, 123, 123, 117, 124, 124, 121, 125, 125, + 125, 125, 113, 113, 82, 82, 82, 20, 20, 20, + 127, 126, 126, 128, 128, 128, 128, 60, 129, 129, + 130, 61, 132, 132, 133, 133, 134, 134, 86, 135, + 135, 135, 135, 135, 135, 135, 140, 140, 141, 141, + 142, 142, 142, 142, 142, 143, 144, 144, 139, 139, + 136, 136, 138, 138, 146, 146, 145, 145, 145, 145, + 145, 145, 145, 145, 145, 145, 137, 147, 147, 149, + 148, 148, 150, 150, 114, 151, 151, 153, 153, 153, + 152, 152, 62, 104, 154, 154, 56, 56, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, @@ -1084,20 +1092,20 @@ class Php7 extends \PhpParser\ParserAbstract 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 161, 162, 162, 163, 155, 155, 160, 160, 164, - 165, 165, 166, 167, 168, 168, 168, 168, 19, 19, - 73, 73, 73, 73, 156, 156, 156, 156, 170, 170, - 159, 159, 159, 157, 157, 176, 176, 176, 176, 176, - 176, 176, 176, 176, 176, 177, 177, 177, 108, 179, - 179, 179, 179, 158, 158, 158, 158, 158, 158, 158, - 158, 59, 59, 173, 173, 173, 173, 173, 180, 180, - 169, 169, 169, 169, 181, 181, 181, 181, 181, 181, - 74, 74, 66, 66, 66, 66, 131, 131, 131, 131, - 184, 183, 172, 172, 172, 172, 172, 172, 172, 171, - 171, 171, 182, 182, 182, 182, 107, 178, 186, 186, - 185, 185, 187, 187, 187, 187, 187, 187, 187, 187, - 175, 175, 175, 175, 174, 189, 188, 188, 188, 188, - 188, 188, 188, 188, 190, 190, 190, 190 + 42, 42, 161, 162, 162, 163, 155, 155, 160, 160, + 164, 165, 165, 166, 167, 168, 168, 168, 168, 19, + 19, 73, 73, 73, 73, 156, 156, 156, 156, 170, + 170, 159, 159, 159, 157, 157, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 176, 177, 177, 177, 108, + 179, 179, 179, 179, 158, 158, 158, 158, 158, 158, + 158, 158, 59, 59, 173, 173, 173, 173, 173, 180, + 180, 169, 169, 169, 169, 181, 181, 181, 181, 181, + 181, 74, 74, 66, 66, 66, 66, 131, 131, 131, + 131, 184, 183, 172, 172, 172, 172, 172, 172, 172, + 171, 171, 171, 182, 182, 182, 182, 107, 178, 186, + 186, 185, 185, 187, 187, 187, 187, 187, 187, 187, + 187, 175, 175, 175, 175, 174, 189, 188, 188, 188, + 188, 188, 188, 188, 188, 190, 190, 190, 190 ); protected array $ruleToLength = array( @@ -1121,50 +1129,50 @@ class Php7 extends \PhpParser\ParserAbstract 3, 3, 1, 2, 5, 7, 9, 6, 5, 6, 3, 2, 1, 1, 1, 1, 0, 2, 1, 3, 8, 0, 4, 2, 1, 3, 0, 1, 0, 1, - 0, 1, 3, 1, 1, 1, 1, 8, 9, 7, - 8, 7, 6, 8, 0, 2, 0, 2, 1, 2, - 1, 2, 1, 1, 1, 0, 2, 0, 2, 0, - 2, 2, 1, 3, 1, 4, 1, 4, 1, 1, - 4, 2, 1, 3, 3, 3, 4, 4, 5, 0, - 2, 4, 3, 1, 1, 7, 0, 2, 1, 3, - 3, 4, 1, 4, 0, 2, 5, 0, 2, 6, - 0, 2, 0, 3, 1, 2, 1, 1, 2, 0, - 1, 3, 0, 2, 1, 1, 1, 1, 1, 1, - 1, 7, 9, 6, 1, 2, 1, 1, 1, 1, - 1, 1, 1, 1, 3, 3, 3, 1, 3, 3, - 3, 3, 3, 1, 3, 3, 1, 1, 2, 1, - 1, 0, 1, 0, 2, 2, 2, 4, 3, 1, - 1, 3, 1, 2, 2, 3, 2, 3, 1, 1, - 2, 3, 1, 1, 3, 2, 0, 1, 5, 5, - 6, 10, 3, 5, 1, 1, 3, 0, 2, 4, - 5, 4, 4, 4, 3, 1, 1, 1, 1, 1, - 1, 0, 1, 1, 2, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 1, 3, 1, 1, - 3, 0, 2, 0, 5, 8, 1, 3, 3, 0, - 2, 2, 2, 3, 1, 0, 1, 1, 3, 3, - 3, 4, 4, 1, 1, 2, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, - 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, + 0, 1, 3, 1, 1, 1, 1, 1, 8, 9, + 7, 8, 7, 6, 8, 0, 2, 0, 2, 1, + 2, 1, 2, 1, 1, 1, 0, 2, 0, 2, + 0, 2, 2, 1, 3, 1, 4, 1, 4, 1, + 1, 4, 2, 1, 3, 3, 3, 4, 4, 5, + 0, 2, 4, 3, 1, 1, 7, 0, 2, 1, + 3, 3, 4, 1, 4, 0, 2, 5, 0, 2, + 6, 0, 2, 0, 3, 1, 2, 1, 1, 2, + 0, 1, 3, 0, 2, 1, 1, 1, 1, 1, + 1, 1, 7, 9, 6, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 3, 3, 3, 1, 3, + 3, 3, 3, 3, 1, 3, 3, 1, 1, 2, + 1, 1, 0, 1, 0, 2, 2, 2, 4, 3, + 1, 1, 3, 1, 2, 2, 3, 2, 3, 1, + 1, 2, 3, 1, 1, 3, 2, 0, 1, 5, + 5, 6, 10, 3, 5, 1, 1, 3, 0, 2, + 4, 5, 4, 4, 4, 3, 1, 1, 1, 1, + 1, 1, 0, 1, 1, 2, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 1, 3, 1, + 1, 3, 0, 2, 0, 5, 8, 1, 3, 3, + 0, 2, 2, 2, 3, 1, 0, 1, 1, 3, + 3, 3, 4, 4, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 2, 2, 2, 2, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 5, 4, 3, 4, - 4, 2, 2, 4, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 1, 3, 2, 1, 2, - 4, 2, 2, 8, 9, 8, 9, 9, 10, 9, - 10, 8, 3, 2, 2, 1, 1, 0, 4, 2, - 1, 3, 2, 1, 2, 2, 2, 4, 1, 1, - 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, - 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 5, 3, 3, 4, - 1, 1, 3, 1, 1, 1, 1, 1, 3, 2, - 3, 0, 1, 1, 3, 1, 1, 1, 1, 1, - 1, 3, 1, 1, 1, 4, 4, 1, 4, 4, - 0, 1, 1, 1, 3, 3, 1, 4, 2, 2, - 1, 3, 1, 4, 4, 3, 3, 3, 3, 1, - 3, 1, 1, 3, 1, 1, 4, 1, 1, 1, - 3, 1, 1, 2, 1, 3, 4, 3, 2, 0, - 2, 2, 1, 2, 1, 1, 1, 4, 3, 3, - 3, 3, 6, 3, 1, 1, 2, 1 + 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 2, 2, 2, 2, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 5, 4, 3, + 4, 4, 2, 2, 4, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 3, 2, 1, + 2, 4, 2, 2, 8, 9, 8, 9, 9, 10, + 9, 10, 8, 3, 2, 2, 1, 1, 0, 4, + 2, 1, 3, 2, 1, 2, 2, 2, 4, 1, + 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, + 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 5, 3, 3, + 4, 1, 1, 3, 1, 1, 1, 1, 1, 3, + 2, 3, 0, 1, 1, 3, 1, 1, 1, 1, + 1, 1, 3, 1, 1, 1, 4, 4, 1, 4, + 4, 0, 1, 1, 1, 3, 3, 1, 4, 2, + 2, 1, 3, 1, 4, 4, 3, 3, 3, 3, + 1, 3, 1, 1, 3, 1, 1, 4, 1, 1, + 1, 3, 1, 1, 2, 1, 3, 4, 3, 2, + 0, 2, 2, 1, 2, 1, 1, 1, 4, 3, + 3, 3, 3, 6, 3, 1, 1, 2, 1 ); protected function initReduceCallbacks(): void { @@ -1605,875 +1613,875 @@ protected function initReduceCallbacks(): void { $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 207 => static function ($self, $stackPos) { - $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(8-3)], ['byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-5)], 'returnType' => $self->semStack[$stackPos-(8-7)], 'stmts' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 208 => static function ($self, $stackPos) { - $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(9-4)], ['byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-6)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(8-3)], ['byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-5)], 'returnType' => $self->semStack[$stackPos-(8-7)], 'stmts' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); }, 209 => static function ($self, $stackPos) { + $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(9-4)], ['byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-6)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); + }, + 210 => static function ($self, $stackPos) { $self->semValue = new Stmt\Class_($self->semStack[$stackPos-(7-2)], ['type' => $self->semStack[$stackPos-(7-1)], 'extends' => $self->semStack[$stackPos-(7-3)], 'implements' => $self->semStack[$stackPos-(7-4)], 'stmts' => $self->semStack[$stackPos-(7-6)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos])); $self->checkClass($self->semValue, $stackPos-(7-2)); }, - 210 => static function ($self, $stackPos) { + 211 => static function ($self, $stackPos) { $self->semValue = new Stmt\Class_($self->semStack[$stackPos-(8-3)], ['type' => $self->semStack[$stackPos-(8-2)], 'extends' => $self->semStack[$stackPos-(8-4)], 'implements' => $self->semStack[$stackPos-(8-5)], 'stmts' => $self->semStack[$stackPos-(8-7)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); $self->checkClass($self->semValue, $stackPos-(8-3)); }, - 211 => static function ($self, $stackPos) { + 212 => static function ($self, $stackPos) { $self->semValue = new Stmt\Interface_($self->semStack[$stackPos-(7-3)], ['extends' => $self->semStack[$stackPos-(7-4)], 'stmts' => $self->semStack[$stackPos-(7-6)], 'attrGroups' => $self->semStack[$stackPos-(7-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos])); $self->checkInterface($self->semValue, $stackPos-(7-3)); }, - 212 => static function ($self, $stackPos) { + 213 => static function ($self, $stackPos) { $self->semValue = new Stmt\Trait_($self->semStack[$stackPos-(6-3)], ['stmts' => $self->semStack[$stackPos-(6-5)], 'attrGroups' => $self->semStack[$stackPos-(6-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); }, - 213 => static function ($self, $stackPos) { + 214 => static function ($self, $stackPos) { $self->semValue = new Stmt\Enum_($self->semStack[$stackPos-(8-3)], ['scalarType' => $self->semStack[$stackPos-(8-4)], 'implements' => $self->semStack[$stackPos-(8-5)], 'stmts' => $self->semStack[$stackPos-(8-7)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); $self->checkEnum($self->semValue, $stackPos-(8-3)); }, - 214 => static function ($self, $stackPos) { + 215 => static function ($self, $stackPos) { $self->semValue = null; }, - 215 => static function ($self, $stackPos) { + 216 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 216 => static function ($self, $stackPos) { + 217 => static function ($self, $stackPos) { $self->semValue = null; }, - 217 => static function ($self, $stackPos) { + 218 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 218 => static function ($self, $stackPos) { + 219 => static function ($self, $stackPos) { $self->semValue = 0; }, - 219 => null, 220 => null, - 221 => static function ($self, $stackPos) { + 221 => null, + 222 => static function ($self, $stackPos) { $self->checkClassModifier($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 222 => static function ($self, $stackPos) { + 223 => static function ($self, $stackPos) { $self->semValue = Modifiers::ABSTRACT; }, - 223 => static function ($self, $stackPos) { + 224 => static function ($self, $stackPos) { $self->semValue = Modifiers::FINAL; }, - 224 => static function ($self, $stackPos) { + 225 => static function ($self, $stackPos) { $self->semValue = Modifiers::READONLY; }, - 225 => static function ($self, $stackPos) { + 226 => static function ($self, $stackPos) { $self->semValue = null; }, - 226 => static function ($self, $stackPos) { + 227 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 227 => static function ($self, $stackPos) { + 228 => static function ($self, $stackPos) { $self->semValue = array(); }, - 228 => static function ($self, $stackPos) { + 229 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 229 => static function ($self, $stackPos) { + 230 => static function ($self, $stackPos) { $self->semValue = array(); }, - 230 => static function ($self, $stackPos) { + 231 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 231 => null, - 232 => static function ($self, $stackPos) { + 232 => null, + 233 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 233 => static function ($self, $stackPos) { + 234 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 234 => null, - 235 => static function ($self, $stackPos) { + 235 => null, + 236 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 236 => null, - 237 => static function ($self, $stackPos) { + 237 => null, + 238 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 238 => static function ($self, $stackPos) { + 239 => static function ($self, $stackPos) { if ($self->semStack[$stackPos-(1-1)] instanceof Stmt\Block) { $self->semValue = $self->semStack[$stackPos-(1-1)]->stmts; } else if ($self->semStack[$stackPos-(1-1)] === null) { $self->semValue = []; } else { $self->semValue = [$self->semStack[$stackPos-(1-1)]]; }; }, - 239 => static function ($self, $stackPos) { + 240 => static function ($self, $stackPos) { $self->semValue = null; }, - 240 => static function ($self, $stackPos) { + 241 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 241 => null, - 242 => static function ($self, $stackPos) { + 242 => null, + 243 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 243 => static function ($self, $stackPos) { + 244 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 244 => static function ($self, $stackPos) { + 245 => static function ($self, $stackPos) { $self->semValue = new Node\DeclareItem($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 245 => static function ($self, $stackPos) { + 246 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 246 => static function ($self, $stackPos) { + 247 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-3)]; }, - 247 => static function ($self, $stackPos) { + 248 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 248 => static function ($self, $stackPos) { + 249 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(5-3)]; }, - 249 => static function ($self, $stackPos) { + 250 => static function ($self, $stackPos) { $self->semValue = array(); }, - 250 => static function ($self, $stackPos) { + 251 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 251 => static function ($self, $stackPos) { + 252 => static function ($self, $stackPos) { $self->semValue = new Stmt\Case_($self->semStack[$stackPos-(4-2)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 252 => static function ($self, $stackPos) { + 253 => static function ($self, $stackPos) { $self->semValue = new Stmt\Case_(null, $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 253 => null, 254 => null, - 255 => static function ($self, $stackPos) { + 255 => null, + 256 => static function ($self, $stackPos) { $self->semValue = new Expr\Match_($self->semStack[$stackPos-(7-3)], $self->semStack[$stackPos-(7-6)], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos])); }, - 256 => static function ($self, $stackPos) { + 257 => static function ($self, $stackPos) { $self->semValue = []; }, - 257 => null, - 258 => static function ($self, $stackPos) { + 258 => null, + 259 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 259 => static function ($self, $stackPos) { + 260 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 260 => static function ($self, $stackPos) { + 261 => static function ($self, $stackPos) { $self->semValue = new Node\MatchArm($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 261 => static function ($self, $stackPos) { + 262 => static function ($self, $stackPos) { $self->semValue = new Node\MatchArm(null, $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 262 => static function ($self, $stackPos) { + 263 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(1-1)]; }, - 263 => static function ($self, $stackPos) { + 264 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 264 => static function ($self, $stackPos) { + 265 => static function ($self, $stackPos) { $self->semValue = array(); }, - 265 => static function ($self, $stackPos) { + 266 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 266 => static function ($self, $stackPos) { + 267 => static function ($self, $stackPos) { $self->semValue = new Stmt\ElseIf_($self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, - 267 => static function ($self, $stackPos) { + 268 => static function ($self, $stackPos) { $self->semValue = array(); }, - 268 => static function ($self, $stackPos) { + 269 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 269 => static function ($self, $stackPos) { + 270 => static function ($self, $stackPos) { $self->semValue = new Stmt\ElseIf_($self->semStack[$stackPos-(6-3)], $self->semStack[$stackPos-(6-6)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); $self->fixupAlternativeElse($self->semValue); }, - 270 => static function ($self, $stackPos) { + 271 => static function ($self, $stackPos) { $self->semValue = null; }, - 271 => static function ($self, $stackPos) { + 272 => static function ($self, $stackPos) { $self->semValue = new Stmt\Else_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 272 => static function ($self, $stackPos) { + 273 => static function ($self, $stackPos) { $self->semValue = null; }, - 273 => static function ($self, $stackPos) { + 274 => static function ($self, $stackPos) { $self->semValue = new Stmt\Else_($self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); $self->fixupAlternativeElse($self->semValue); }, - 274 => static function ($self, $stackPos) { + 275 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)], false); }, - 275 => static function ($self, $stackPos) { + 276 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(2-2)], true); }, - 276 => static function ($self, $stackPos) { + 277 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)], false); }, - 277 => static function ($self, $stackPos) { + 278 => static function ($self, $stackPos) { $self->semValue = array($self->fixupArrayDestructuring($self->semStack[$stackPos-(1-1)]), false); }, - 278 => null, - 279 => static function ($self, $stackPos) { + 279 => null, + 280 => static function ($self, $stackPos) { $self->semValue = array(); }, - 280 => static function ($self, $stackPos) { + 281 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 281 => static function ($self, $stackPos) { + 282 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 282 => static function ($self, $stackPos) { + 283 => static function ($self, $stackPos) { $self->semValue = 0; }, - 283 => static function ($self, $stackPos) { + 284 => static function ($self, $stackPos) { $self->checkModifier($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 284 => static function ($self, $stackPos) { + 285 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC; }, - 285 => static function ($self, $stackPos) { + 286 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED; }, - 286 => static function ($self, $stackPos) { + 287 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE; }, - 287 => static function ($self, $stackPos) { + 288 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC_SET; }, - 288 => static function ($self, $stackPos) { + 289 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED_SET; }, - 289 => static function ($self, $stackPos) { + 290 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE_SET; }, - 290 => static function ($self, $stackPos) { + 291 => static function ($self, $stackPos) { $self->semValue = Modifiers::READONLY; }, - 291 => static function ($self, $stackPos) { + 292 => static function ($self, $stackPos) { $self->semValue = new Node\Param($self->semStack[$stackPos-(7-6)], null, $self->semStack[$stackPos-(7-3)], $self->semStack[$stackPos-(7-4)], $self->semStack[$stackPos-(7-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(7-2)], $self->semStack[$stackPos-(7-1)], $self->semStack[$stackPos-(7-7)]); $self->checkParam($self->semValue); $self->addPropertyNameToHooks($self->semValue); }, - 292 => static function ($self, $stackPos) { + 293 => static function ($self, $stackPos) { $self->semValue = new Node\Param($self->semStack[$stackPos-(9-6)], $self->semStack[$stackPos-(9-8)], $self->semStack[$stackPos-(9-3)], $self->semStack[$stackPos-(9-4)], $self->semStack[$stackPos-(9-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(9-2)], $self->semStack[$stackPos-(9-1)], $self->semStack[$stackPos-(9-9)]); $self->checkParam($self->semValue); $self->addPropertyNameToHooks($self->semValue); }, - 293 => static function ($self, $stackPos) { + 294 => static function ($self, $stackPos) { $self->semValue = new Node\Param(new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])), null, $self->semStack[$stackPos-(6-3)], $self->semStack[$stackPos-(6-4)], $self->semStack[$stackPos-(6-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(6-2)], $self->semStack[$stackPos-(6-1)]); }, - 294 => null, - 295 => static function ($self, $stackPos) { + 295 => null, + 296 => static function ($self, $stackPos) { $self->semValue = new Node\NullableType($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 296 => static function ($self, $stackPos) { + 297 => static function ($self, $stackPos) { $self->semValue = new Node\UnionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 297 => null, 298 => null, - 299 => static function ($self, $stackPos) { + 299 => null, + 300 => static function ($self, $stackPos) { $self->semValue = new Node\Name('static', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 300 => static function ($self, $stackPos) { + 301 => static function ($self, $stackPos) { $self->semValue = $self->handleBuiltinTypes($self->semStack[$stackPos-(1-1)]); }, - 301 => static function ($self, $stackPos) { + 302 => static function ($self, $stackPos) { $self->semValue = new Node\Identifier('array', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 302 => static function ($self, $stackPos) { + 303 => static function ($self, $stackPos) { $self->semValue = new Node\Identifier('callable', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 303 => null, - 304 => static function ($self, $stackPos) { + 304 => null, + 305 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 305 => static function ($self, $stackPos) { + 306 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 306 => static function ($self, $stackPos) { + 307 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 307 => null, - 308 => static function ($self, $stackPos) { + 308 => null, + 309 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 309 => static function ($self, $stackPos) { + 310 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 310 => static function ($self, $stackPos) { + 311 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 311 => static function ($self, $stackPos) { + 312 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 312 => static function ($self, $stackPos) { + 313 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 313 => static function ($self, $stackPos) { + 314 => static function ($self, $stackPos) { $self->semValue = new Node\IntersectionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 314 => static function ($self, $stackPos) { + 315 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 315 => static function ($self, $stackPos) { + 316 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 316 => static function ($self, $stackPos) { + 317 => static function ($self, $stackPos) { $self->semValue = new Node\IntersectionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 317 => null, - 318 => static function ($self, $stackPos) { + 318 => null, + 319 => static function ($self, $stackPos) { $self->semValue = new Node\NullableType($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 319 => static function ($self, $stackPos) { + 320 => static function ($self, $stackPos) { $self->semValue = new Node\UnionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 320 => null, - 321 => static function ($self, $stackPos) { + 321 => null, + 322 => static function ($self, $stackPos) { $self->semValue = null; }, - 322 => null, - 323 => static function ($self, $stackPos) { + 323 => null, + 324 => static function ($self, $stackPos) { $self->semValue = null; }, - 324 => static function ($self, $stackPos) { + 325 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 325 => static function ($self, $stackPos) { + 326 => static function ($self, $stackPos) { $self->semValue = null; }, - 326 => static function ($self, $stackPos) { + 327 => static function ($self, $stackPos) { $self->semValue = array(); }, - 327 => static function ($self, $stackPos) { + 328 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 328 => static function ($self, $stackPos) { + 329 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-2)]); }, - 329 => static function ($self, $stackPos) { + 330 => static function ($self, $stackPos) { $self->semValue = new Node\VariadicPlaceholder($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 330 => static function ($self, $stackPos) { + 331 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 331 => static function ($self, $stackPos) { + 332 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 332 => static function ($self, $stackPos) { + 333 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(1-1)], false, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 333 => static function ($self, $stackPos) { + 334 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(2-2)], true, false, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 334 => static function ($self, $stackPos) { + 335 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(2-2)], false, true, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 335 => static function ($self, $stackPos) { + 336 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(3-3)], false, false, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(3-1)]); }, - 336 => null, - 337 => static function ($self, $stackPos) { + 337 => null, + 338 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 338 => static function ($self, $stackPos) { + 339 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 339 => null, 340 => null, - 341 => static function ($self, $stackPos) { + 341 => null, + 342 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 342 => static function ($self, $stackPos) { + 343 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 343 => static function ($self, $stackPos) { + 344 => static function ($self, $stackPos) { $self->semValue = new Node\StaticVar($self->semStack[$stackPos-(1-1)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 344 => static function ($self, $stackPos) { + 345 => static function ($self, $stackPos) { $self->semValue = new Node\StaticVar($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 345 => static function ($self, $stackPos) { + 346 => static function ($self, $stackPos) { if ($self->semStack[$stackPos-(2-2)] !== null) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; } else { $self->semValue = $self->semStack[$stackPos-(2-1)]; } }, - 346 => static function ($self, $stackPos) { + 347 => static function ($self, $stackPos) { $self->semValue = array(); }, - 347 => static function ($self, $stackPos) { + 348 => static function ($self, $stackPos) { $nop = $self->maybeCreateZeroLengthNop($self->tokenPos);; if ($nop !== null) { $self->semStack[$stackPos-(1-1)][] = $nop; } $self->semValue = $self->semStack[$stackPos-(1-1)]; }, - 348 => static function ($self, $stackPos) { + 349 => static function ($self, $stackPos) { $self->semValue = new Stmt\Property($self->semStack[$stackPos-(5-2)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-1)]); }, - 349 => static function ($self, $stackPos) { + 350 => static function ($self, $stackPos) { $self->semValue = new Stmt\ClassConst($self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(5-1)]); $self->checkClassConst($self->semValue, $stackPos-(5-2)); }, - 350 => static function ($self, $stackPos) { + 351 => static function ($self, $stackPos) { $self->semValue = new Stmt\ClassConst($self->semStack[$stackPos-(6-5)], $self->semStack[$stackPos-(6-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(6-1)], $self->semStack[$stackPos-(6-4)]); $self->checkClassConst($self->semValue, $stackPos-(6-2)); }, - 351 => static function ($self, $stackPos) { + 352 => static function ($self, $stackPos) { $self->semValue = new Stmt\ClassMethod($self->semStack[$stackPos-(10-5)], ['type' => $self->semStack[$stackPos-(10-2)], 'byRef' => $self->semStack[$stackPos-(10-4)], 'params' => $self->semStack[$stackPos-(10-7)], 'returnType' => $self->semStack[$stackPos-(10-9)], 'stmts' => $self->semStack[$stackPos-(10-10)], 'attrGroups' => $self->semStack[$stackPos-(10-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(10-1)], $self->tokenEndStack[$stackPos])); $self->checkClassMethod($self->semValue, $stackPos-(10-2)); }, - 352 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUse($self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); - }, 353 => static function ($self, $stackPos) { - $self->semValue = new Stmt\EnumCase($self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUse($self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 354 => static function ($self, $stackPos) { - $self->semValue = null; /* will be skipped */ + $self->semValue = new Stmt\EnumCase($self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, 355 => static function ($self, $stackPos) { - $self->semValue = array(); + $self->semValue = null; /* will be skipped */ }, 356 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = array(); }, 357 => static function ($self, $stackPos) { - $self->semValue = array(); + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 358 => static function ($self, $stackPos) { - $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; + $self->semValue = array(); }, 359 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Precedence($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, 360 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(5-1)][0], $self->semStack[$stackPos-(5-1)][1], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUseAdaptation\Precedence($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 361 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(5-1)][0], $self->semStack[$stackPos-(5-1)][1], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, 362 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], null, $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 363 => static function ($self, $stackPos) { $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], null, $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 364 => static function ($self, $stackPos) { + $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], null, $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + }, + 365 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 365 => null, - 366 => static function ($self, $stackPos) { + 366 => null, + 367 => static function ($self, $stackPos) { $self->semValue = array(null, $self->semStack[$stackPos-(1-1)]); }, - 367 => static function ($self, $stackPos) { + 368 => static function ($self, $stackPos) { $self->semValue = null; }, - 368 => null, 369 => null, - 370 => static function ($self, $stackPos) { + 370 => null, + 371 => static function ($self, $stackPos) { $self->semValue = 0; }, - 371 => static function ($self, $stackPos) { + 372 => static function ($self, $stackPos) { $self->semValue = 0; }, - 372 => null, 373 => null, - 374 => static function ($self, $stackPos) { + 374 => null, + 375 => static function ($self, $stackPos) { $self->checkModifier($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 375 => static function ($self, $stackPos) { + 376 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC; }, - 376 => static function ($self, $stackPos) { + 377 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED; }, - 377 => static function ($self, $stackPos) { + 378 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE; }, - 378 => static function ($self, $stackPos) { + 379 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC_SET; }, - 379 => static function ($self, $stackPos) { + 380 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED_SET; }, - 380 => static function ($self, $stackPos) { + 381 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE_SET; }, - 381 => static function ($self, $stackPos) { + 382 => static function ($self, $stackPos) { $self->semValue = Modifiers::STATIC; }, - 382 => static function ($self, $stackPos) { + 383 => static function ($self, $stackPos) { $self->semValue = Modifiers::ABSTRACT; }, - 383 => static function ($self, $stackPos) { + 384 => static function ($self, $stackPos) { $self->semValue = Modifiers::FINAL; }, - 384 => static function ($self, $stackPos) { + 385 => static function ($self, $stackPos) { $self->semValue = Modifiers::READONLY; }, - 385 => null, - 386 => static function ($self, $stackPos) { + 386 => null, + 387 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 387 => static function ($self, $stackPos) { + 388 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 388 => static function ($self, $stackPos) { + 389 => static function ($self, $stackPos) { $self->semValue = new Node\VarLikeIdentifier(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 389 => static function ($self, $stackPos) { + 390 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyItem($self->semStack[$stackPos-(1-1)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 390 => static function ($self, $stackPos) { + 391 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyItem($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 391 => static function ($self, $stackPos) { + 392 => static function ($self, $stackPos) { $self->semValue = []; }, - 392 => static function ($self, $stackPos) { + 393 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 393 => static function ($self, $stackPos) { + 394 => static function ($self, $stackPos) { $self->semValue = []; }, - 394 => static function ($self, $stackPos) { + 395 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyHook($self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-5)], ['flags' => $self->semStack[$stackPos-(5-2)], 'byRef' => $self->semStack[$stackPos-(5-3)], 'params' => [], 'attrGroups' => $self->semStack[$stackPos-(5-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); $self->checkPropertyHook($self->semValue, null); }, - 395 => static function ($self, $stackPos) { + 396 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyHook($self->semStack[$stackPos-(8-4)], $self->semStack[$stackPos-(8-8)], ['flags' => $self->semStack[$stackPos-(8-2)], 'byRef' => $self->semStack[$stackPos-(8-3)], 'params' => $self->semStack[$stackPos-(8-6)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); $self->checkPropertyHook($self->semValue, $stackPos-(8-5)); }, - 396 => static function ($self, $stackPos) { - $self->semValue = null; - }, 397 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = null; }, 398 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 399 => static function ($self, $stackPos) { - $self->semValue = 0; + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 400 => static function ($self, $stackPos) { + $self->semValue = 0; + }, + 401 => static function ($self, $stackPos) { $self->checkPropertyHookModifiers($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 401 => null, 402 => null, - 403 => static function ($self, $stackPos) { + 403 => null, + 404 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 404 => static function ($self, $stackPos) { + 405 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 405 => static function ($self, $stackPos) { + 406 => static function ($self, $stackPos) { $self->semValue = array(); }, - 406 => null, 407 => null, - 408 => static function ($self, $stackPos) { + 408 => null, + 409 => static function ($self, $stackPos) { $self->semValue = new Expr\Assign($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 409 => static function ($self, $stackPos) { + 410 => static function ($self, $stackPos) { $self->semValue = new Expr\Assign($self->fixupArrayDestructuring($self->semStack[$stackPos-(3-1)]), $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 410 => static function ($self, $stackPos) { + 411 => static function ($self, $stackPos) { $self->semValue = new Expr\Assign($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 411 => static function ($self, $stackPos) { + 412 => static function ($self, $stackPos) { $self->semValue = new Expr\AssignRef($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 412 => static function ($self, $stackPos) { + 413 => static function ($self, $stackPos) { $self->semValue = new Expr\AssignRef($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); if (!$self->phpVersion->allowsAssignNewByReference()) { $self->emitError(new Error('Cannot assign new by reference', $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]))); } }, - 413 => null, 414 => null, - 415 => static function ($self, $stackPos) { - $self->semValue = new Expr\Clone_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); - }, + 415 => null, 416 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Clone_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 417 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 418 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 419 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 420 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 421 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 422 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 423 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 424 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 425 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 426 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 427 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 428 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 429 => static function ($self, $stackPos) { - $self->semValue = new Expr\PostInc($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 430 => static function ($self, $stackPos) { - $self->semValue = new Expr\PreInc($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PostInc($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 431 => static function ($self, $stackPos) { - $self->semValue = new Expr\PostDec($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PreInc($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 432 => static function ($self, $stackPos) { - $self->semValue = new Expr\PreDec($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PostDec($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 433 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BooleanOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PreDec($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 434 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BooleanAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BooleanOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 435 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\LogicalOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BooleanAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 436 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\LogicalAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\LogicalOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 437 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\LogicalXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\LogicalAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 438 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\LogicalXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 439 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 440 => static function ($self, $stackPos) { $self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 441 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 442 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 443 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 444 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 445 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 446 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 447 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 448 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 449 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 450 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 451 => static function ($self, $stackPos) { - $self->semValue = new Expr\UnaryPlus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 452 => static function ($self, $stackPos) { - $self->semValue = new Expr\UnaryMinus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\UnaryPlus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 453 => static function ($self, $stackPos) { - $self->semValue = new Expr\BooleanNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\UnaryMinus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 454 => static function ($self, $stackPos) { - $self->semValue = new Expr\BitwiseNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BooleanNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 455 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Identical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BitwiseNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 456 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\NotIdentical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Identical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 457 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Equal($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\NotIdentical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 458 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\NotEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Equal($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 459 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Spaceship($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\NotEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 460 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Smaller($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Spaceship($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 461 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\SmallerOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Smaller($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 462 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Greater($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\SmallerOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 463 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\GreaterOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Greater($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 464 => static function ($self, $stackPos) { - $self->semValue = new Expr\Instanceof_($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\GreaterOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 465 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = new Expr\Instanceof_($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 466 => static function ($self, $stackPos) { - $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(5-1)], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 467 => static function ($self, $stackPos) { - $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(4-1)], null, $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(5-1)], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, 468 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(4-1)], null, $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 469 => static function ($self, $stackPos) { - $self->semValue = new Expr\Isset_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 470 => static function ($self, $stackPos) { - $self->semValue = new Expr\Empty_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Isset_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 471 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Empty_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 472 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 473 => static function ($self, $stackPos) { - $self->semValue = new Expr\Eval_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 474 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Eval_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 475 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 476 => static function ($self, $stackPos) { - $self->semValue = new Expr\Cast\Int_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 477 => static function ($self, $stackPos) { + $self->semValue = new Expr\Cast\Int_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + }, + 478 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = $self->getFloatCastKind($self->semStack[$stackPos-(2-1)]); $self->semValue = new Expr\Cast\Double($self->semStack[$stackPos-(2-2)], $attrs); }, - 478 => static function ($self, $stackPos) { + 479 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\String_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 479 => static function ($self, $stackPos) { + 480 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Array_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 480 => static function ($self, $stackPos) { + 481 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Object_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 481 => static function ($self, $stackPos) { + 482 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Bool_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 482 => static function ($self, $stackPos) { + 483 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Unset_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 483 => static function ($self, $stackPos) { + 484 => static function ($self, $stackPos) { $self->semValue = $self->createExitExpr($self->semStack[$stackPos-(2-1)], $stackPos-(2-1), $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 484 => static function ($self, $stackPos) { + 485 => static function ($self, $stackPos) { $self->semValue = new Expr\ErrorSuppress($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 485 => null, - 486 => static function ($self, $stackPos) { + 486 => null, + 487 => static function ($self, $stackPos) { $self->semValue = new Expr\ShellExec($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 487 => static function ($self, $stackPos) { + 488 => static function ($self, $stackPos) { $self->semValue = new Expr\Print_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 488 => static function ($self, $stackPos) { + 489 => static function ($self, $stackPos) { $self->semValue = new Expr\Yield_(null, null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 489 => static function ($self, $stackPos) { + 490 => static function ($self, $stackPos) { $self->semValue = new Expr\Yield_($self->semStack[$stackPos-(2-2)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 490 => static function ($self, $stackPos) { + 491 => static function ($self, $stackPos) { $self->semValue = new Expr\Yield_($self->semStack[$stackPos-(4-4)], $self->semStack[$stackPos-(4-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 491 => static function ($self, $stackPos) { + 492 => static function ($self, $stackPos) { $self->semValue = new Expr\YieldFrom($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 492 => static function ($self, $stackPos) { + 493 => static function ($self, $stackPos) { $self->semValue = new Expr\Throw_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 493 => static function ($self, $stackPos) { + 494 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => false, 'byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-4)], 'returnType' => $self->semStack[$stackPos-(8-6)], 'expr' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); }, - 494 => static function ($self, $stackPos) { + 495 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => true, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'returnType' => $self->semStack[$stackPos-(9-7)], 'expr' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 495 => static function ($self, $stackPos) { + 496 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => false, 'byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-4)], 'uses' => $self->semStack[$stackPos-(8-6)], 'returnType' => $self->semStack[$stackPos-(8-7)], 'stmts' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); }, - 496 => static function ($self, $stackPos) { + 497 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => true, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'uses' => $self->semStack[$stackPos-(9-7)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 497 => static function ($self, $stackPos) { + 498 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => false, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'returnType' => $self->semStack[$stackPos-(9-7)], 'expr' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 498 => static function ($self, $stackPos) { + 499 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => true, 'byRef' => $self->semStack[$stackPos-(10-4)], 'params' => $self->semStack[$stackPos-(10-6)], 'returnType' => $self->semStack[$stackPos-(10-8)], 'expr' => $self->semStack[$stackPos-(10-10)], 'attrGroups' => $self->semStack[$stackPos-(10-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(10-1)], $self->tokenEndStack[$stackPos])); }, - 499 => static function ($self, $stackPos) { + 500 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => false, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'uses' => $self->semStack[$stackPos-(9-7)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 500 => static function ($self, $stackPos) { + 501 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => true, 'byRef' => $self->semStack[$stackPos-(10-4)], 'params' => $self->semStack[$stackPos-(10-6)], 'uses' => $self->semStack[$stackPos-(10-8)], 'returnType' => $self->semStack[$stackPos-(10-9)], 'stmts' => $self->semStack[$stackPos-(10-10)], 'attrGroups' => $self->semStack[$stackPos-(10-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(10-1)], $self->tokenEndStack[$stackPos])); }, - 501 => static function ($self, $stackPos) { + 502 => static function ($self, $stackPos) { $self->semValue = array(new Stmt\Class_(null, ['type' => $self->semStack[$stackPos-(8-2)], 'extends' => $self->semStack[$stackPos-(8-4)], 'implements' => $self->semStack[$stackPos-(8-5)], 'stmts' => $self->semStack[$stackPos-(8-7)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])), $self->semStack[$stackPos-(8-3)]); $self->checkClass($self->semValue[0], -1); }, - 502 => static function ($self, $stackPos) { + 503 => static function ($self, $stackPos) { $self->semValue = new Expr\New_($self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 503 => static function ($self, $stackPos) { + 504 => static function ($self, $stackPos) { list($class, $ctorArgs) = $self->semStack[$stackPos-(2-2)]; $self->semValue = new Expr\New_($class, $ctorArgs, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 504 => static function ($self, $stackPos) { + 505 => static function ($self, $stackPos) { $self->semValue = new Expr\New_($self->semStack[$stackPos-(2-2)], [], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 505 => null, 506 => null, - 507 => static function ($self, $stackPos) { + 507 => null, + 508 => static function ($self, $stackPos) { $self->semValue = array(); }, - 508 => static function ($self, $stackPos) { + 509 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-3)]; }, - 509 => null, - 510 => static function ($self, $stackPos) { - $self->semValue = array($self->semStack[$stackPos-(1-1)]); - }, + 510 => null, 511 => static function ($self, $stackPos) { - $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; + $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, 512 => static function ($self, $stackPos) { - $self->semValue = new Node\ClosureUse($self->semStack[$stackPos-(2-2)], $self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, 513 => static function ($self, $stackPos) { - $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Node\ClosureUse($self->semStack[$stackPos-(2-2)], $self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 514 => static function ($self, $stackPos) { - $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 515 => static function ($self, $stackPos) { $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); @@ -2482,310 +2490,313 @@ protected function initReduceCallbacks(): void { $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 517 => static function ($self, $stackPos) { - $self->semValue = new Expr\StaticCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 518 => static function ($self, $stackPos) { - $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\StaticCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 519 => null, - 520 => static function ($self, $stackPos) { + 519 => static function ($self, $stackPos) { $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, + 520 => null, 521 => static function ($self, $stackPos) { $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 522 => static function ($self, $stackPos) { - $self->semValue = new Name\FullyQualified(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 523 => static function ($self, $stackPos) { + $self->semValue = new Name\FullyQualified(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + }, + 524 => static function ($self, $stackPos) { $self->semValue = new Name\Relative(substr($self->semStack[$stackPos-(1-1)], 10), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 524 => null, 525 => null, - 526 => static function ($self, $stackPos) { + 526 => null, + 527 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 527 => static function ($self, $stackPos) { + 528 => static function ($self, $stackPos) { $self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 528 => null, 529 => null, - 530 => static function ($self, $stackPos) { + 530 => null, + 531 => static function ($self, $stackPos) { $self->semValue = array(); }, - 531 => static function ($self, $stackPos) { + 532 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); foreach ($self->semValue as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', $self->phpVersion->supportsUnicodeEscapes()); } }; }, - 532 => static function ($self, $stackPos) { + 533 => static function ($self, $stackPos) { foreach ($self->semStack[$stackPos-(1-1)] as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', $self->phpVersion->supportsUnicodeEscapes()); } }; $self->semValue = $self->semStack[$stackPos-(1-1)]; }, - 533 => static function ($self, $stackPos) { + 534 => static function ($self, $stackPos) { $self->semValue = array(); }, - 534 => null, - 535 => static function ($self, $stackPos) { + 535 => null, + 536 => static function ($self, $stackPos) { $self->semValue = new Expr\ConstFetch($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 536 => static function ($self, $stackPos) { + 537 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Line($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 537 => static function ($self, $stackPos) { + 538 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\File($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 538 => static function ($self, $stackPos) { + 539 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Dir($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 539 => static function ($self, $stackPos) { + 540 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Class_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 540 => static function ($self, $stackPos) { + 541 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Trait_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 541 => static function ($self, $stackPos) { + 542 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Method($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 542 => static function ($self, $stackPos) { + 543 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Function_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 543 => static function ($self, $stackPos) { + 544 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Namespace_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 544 => static function ($self, $stackPos) { + 545 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Property($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 545 => static function ($self, $stackPos) { + 546 => static function ($self, $stackPos) { $self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 546 => static function ($self, $stackPos) { + 547 => static function ($self, $stackPos) { $self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos-(5-1)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, - 547 => static function ($self, $stackPos) { + 548 => static function ($self, $stackPos) { $self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos-(3-1)], new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(3-3)], $self->tokenEndStack[$stackPos-(3-3)])), $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 548 => static function ($self, $stackPos) { + 549 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_SHORT; $self->semValue = new Expr\Array_($self->semStack[$stackPos-(3-2)], $attrs); }, - 549 => static function ($self, $stackPos) { + 550 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_LONG; $self->semValue = new Expr\Array_($self->semStack[$stackPos-(4-3)], $attrs); $self->createdArrays->attach($self->semValue); }, - 550 => static function ($self, $stackPos) { + 551 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(1-1)]; $self->createdArrays->attach($self->semValue); }, - 551 => static function ($self, $stackPos) { + 552 => static function ($self, $stackPos) { $self->semValue = Scalar\String_::fromString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]), $self->phpVersion->supportsUnicodeEscapes()); }, - 552 => static function ($self, $stackPos) { + 553 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED; foreach ($self->semStack[$stackPos-(3-2)] as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '"', $self->phpVersion->supportsUnicodeEscapes()); } }; $self->semValue = new Scalar\InterpolatedString($self->semStack[$stackPos-(3-2)], $attrs); }, - 553 => static function ($self, $stackPos) { + 554 => static function ($self, $stackPos) { $self->semValue = $self->parseLNumber($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]), $self->phpVersion->allowsInvalidOctals()); }, - 554 => static function ($self, $stackPos) { + 555 => static function ($self, $stackPos) { $self->semValue = Scalar\Float_::fromString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 555 => null, 556 => null, 557 => null, - 558 => static function ($self, $stackPos) { + 558 => null, + 559 => static function ($self, $stackPos) { $self->semValue = $self->parseDocString($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos-(3-3)], $self->tokenEndStack[$stackPos-(3-3)]), true); }, - 559 => static function ($self, $stackPos) { + 560 => static function ($self, $stackPos) { $self->semValue = $self->parseDocString($self->semStack[$stackPos-(2-1)], '', $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos-(2-2)], $self->tokenEndStack[$stackPos-(2-2)]), true); }, - 560 => static function ($self, $stackPos) { + 561 => static function ($self, $stackPos) { $self->semValue = $self->parseDocString($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos-(3-3)], $self->tokenEndStack[$stackPos-(3-3)]), true); }, - 561 => static function ($self, $stackPos) { + 562 => static function ($self, $stackPos) { $self->semValue = null; }, - 562 => null, 563 => null, - 564 => static function ($self, $stackPos) { + 564 => null, + 565 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 565 => null, 566 => null, 567 => null, 568 => null, 569 => null, 570 => null, - 571 => static function ($self, $stackPos) { + 571 => null, + 572 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 572 => null, 573 => null, 574 => null, - 575 => static function ($self, $stackPos) { + 575 => null, + 576 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 576 => static function ($self, $stackPos) { + 577 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 577 => null, - 578 => static function ($self, $stackPos) { + 578 => null, + 579 => static function ($self, $stackPos) { $self->semValue = new Expr\MethodCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 579 => static function ($self, $stackPos) { + 580 => static function ($self, $stackPos) { $self->semValue = new Expr\NullsafeMethodCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 580 => static function ($self, $stackPos) { + 581 => static function ($self, $stackPos) { $self->semValue = null; }, - 581 => null, 582 => null, 583 => null, - 584 => static function ($self, $stackPos) { + 584 => null, + 585 => static function ($self, $stackPos) { $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 585 => static function ($self, $stackPos) { + 586 => static function ($self, $stackPos) { $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 586 => null, - 587 => static function ($self, $stackPos) { + 587 => null, + 588 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 588 => static function ($self, $stackPos) { + 589 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 589 => static function ($self, $stackPos) { + 590 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable(new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])), $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 590 => static function ($self, $stackPos) { + 591 => static function ($self, $stackPos) { $var = $self->semStack[$stackPos-(1-1)]->name; $self->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])) : $var; }, - 591 => static function ($self, $stackPos) { + 592 => static function ($self, $stackPos) { $self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 592 => null, - 593 => static function ($self, $stackPos) { - $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); - }, + 593 => null, 594 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 595 => static function ($self, $stackPos) { - $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 596 => static function ($self, $stackPos) { - $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 597 => static function ($self, $stackPos) { - $self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 598 => static function ($self, $stackPos) { $self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 599 => null, - 600 => static function ($self, $stackPos) { + 599 => static function ($self, $stackPos) { + $self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + }, + 600 => null, + 601 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 601 => null, 602 => null, - 603 => static function ($self, $stackPos) { + 603 => null, + 604 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 604 => null, - 605 => static function ($self, $stackPos) { + 605 => null, + 606 => static function ($self, $stackPos) { $self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 606 => static function ($self, $stackPos) { + 607 => static function ($self, $stackPos) { $self->semValue = new Expr\List_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); $self->semValue->setAttribute('kind', Expr\List_::KIND_LIST); $self->postprocessList($self->semValue); }, - 607 => static function ($self, $stackPos) { + 608 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(1-1)]; $end = count($self->semValue)-1; if ($self->semValue[$end]->value instanceof Expr\Error) array_pop($self->semValue); }, - 608 => null, - 609 => static function ($self, $stackPos) { + 609 => null, + 610 => static function ($self, $stackPos) { /* do nothing -- prevent default action of $$=$self->semStack[$1]. See $551. */ }, - 610 => static function ($self, $stackPos) { + 611 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 611 => static function ($self, $stackPos) { + 612 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 612 => static function ($self, $stackPos) { + 613 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(1-1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 613 => static function ($self, $stackPos) { + 614 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(2-2)], null, true, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 614 => static function ($self, $stackPos) { + 615 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(1-1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 615 => static function ($self, $stackPos) { + 616 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(3-3)], $self->semStack[$stackPos-(3-1)], false, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 616 => static function ($self, $stackPos) { + 617 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(4-4)], $self->semStack[$stackPos-(4-1)], true, $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 617 => static function ($self, $stackPos) { + 618 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(3-3)], $self->semStack[$stackPos-(3-1)], false, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 618 => static function ($self, $stackPos) { + 619 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(2-2)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]), true); }, - 619 => static function ($self, $stackPos) { + 620 => static function ($self, $stackPos) { /* Create an Error node now to remember the position. We'll later either report an error, or convert this into a null element, depending on whether this is a creation or destructuring context. */ $attrs = $self->createEmptyElemAttributes($self->tokenPos); $self->semValue = new Node\ArrayItem(new Expr\Error($attrs), null, false, $attrs); }, - 620 => static function ($self, $stackPos) { - $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; - }, 621 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, 622 => static function ($self, $stackPos) { - $self->semValue = array($self->semStack[$stackPos-(1-1)]); + $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, 623 => static function ($self, $stackPos) { - $self->semValue = array($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)]); + $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, 624 => static function ($self, $stackPos) { - $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]); $attrs['rawValue'] = $self->semStack[$stackPos-(1-1)]; $self->semValue = new Node\InterpolatedStringPart($self->semStack[$stackPos-(1-1)], $attrs); + $self->semValue = array($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)]); }, 625 => static function ($self, $stackPos) { - $self->semValue = new Expr\Variable($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]); $attrs['rawValue'] = $self->semStack[$stackPos-(1-1)]; $self->semValue = new Node\InterpolatedStringPart($self->semStack[$stackPos-(1-1)], $attrs); }, - 626 => null, - 627 => static function ($self, $stackPos) { - $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + 626 => static function ($self, $stackPos) { + $self->semValue = new Expr\Variable($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, + 627 => null, 628 => static function ($self, $stackPos) { - $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 629 => static function ($self, $stackPos) { - $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 630 => static function ($self, $stackPos) { - $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 631 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 632 => static function ($self, $stackPos) { - $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(6-2)], $self->semStack[$stackPos-(6-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 633 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(6-2)], $self->semStack[$stackPos-(6-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); }, 634 => static function ($self, $stackPos) { - $self->semValue = new Scalar\String_($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 635 => static function ($self, $stackPos) { - $self->semValue = $self->parseNumString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Scalar\String_($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 636 => static function ($self, $stackPos) { + $self->semValue = $self->parseNumString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + }, + 637 => static function ($self, $stackPos) { $self->semValue = $self->parseNumString('-' . $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 637 => null, + 638 => null, ]; } } diff --git a/lib/PhpParser/Parser/Php8.php b/lib/PhpParser/Parser/Php8.php index 19309dcdfe..4dfb7390fd 100644 --- a/lib/PhpParser/Parser/Php8.php +++ b/lib/PhpParser/Parser/Php8.php @@ -165,7 +165,7 @@ class Php8 extends \PhpParser\ParserAbstract protected int $tokenToSymbolMapSize = 400; protected int $actionTableSize = 1289; - protected int $gotoTableSize = 710; + protected int $gotoTableSize = 743; protected int $invalidSymbol = 172; protected int $errorSymbol = 1; @@ -395,134 +395,134 @@ class Php8 extends \PhpParser\ParserAbstract protected array $action = array( 126, 127, 128, 573, 129, 130, 959, 768, 769, 770, - 131, 38, 852, 493, 569, 1380,-32766,-32766,-32766, 0, - 843, 1138, 1139, 1140, 1134, 1133, 1132, 1141, 1135, 1136, - 1137,-32766,-32766,-32766, 854, 762, 761,-32766, 1049,-32766, + 131, 38, 852, 493, 569, 1381,-32766,-32766,-32766, 0, + 843, 1139, 1140, 1141, 1135, 1134, 1133, 1142, 1136, 1137, + 1138,-32766,-32766,-32766, 854, 762, 761,-32766, 1050,-32766, -32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767, - -32767, 1009,-32766,-32766,-32766, 771, 1138, 1139, 1140, 1134, - 1133, 1132, 1141, 1135, 1136, 1137, 387, 388, 447, 263, - 132, 390, 775, 776, 777, 778, 432, 848, 433, 1317, - -571, 36, 246, 47, 292, 832, 779, 780, 781, 782, + -32767, 1010,-32766,-32766, 2, 771, 1139, 1140, 1141, 1135, + 1134, 1133, 1142, 1136, 1137, 1138, 387, 388, 447, 263, + 132, 390, 775, 776, 777, 778, 432,-32766, 433, 1318, + -572, 36, 246, 47, 292, 832, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 808, 574, 809, 810, 811, 812, 800, 801, 345, 346, 803, 804, 789, 790, 791, 793, 794, 795, 360, 835, 836, 837, 838, 839, - 575, 2, 297, -333, 796, 797, 576, 577, 236, 820, + 575, -374, 297, -374, 796, 797, 576, 577, -334, 820, 818, 819, 831, 815, 816, 26, -195, 578, 579, 814, - 580, 581, 582, 583, 324, 584, 585, -571, -571, 494, - 298, 299, 817, 586, 587, 35, 133, 849, 126, 127, - 128, 573, 129, 130, 1082, 768, 769, 770, 131, 38, - -32766, 134, 738, 1042, 1041, 1040, 1046, 1043, 1044, 1045, - -32766,-32766,-32766, 1010, 104, 105, 106, 107, 108, 880, - 275, 881,-32766, 762, 761, 1058, 853,-32766,-32766,-32766, + 580, 581, 582, 583, 325, 584, 585, -572, -572, 494, + 298, 299, 817, 586, 587, 35, 133, 236, 126, 127, + 128, 573, 129, 130, 1083, 768, 769, 770, 131, 38, + -32766, 134, 738, 1043, 1042, 1041, 1047, 1044, 1045, 1046, + -32766,-32766,-32766, 1011, 104, 105, 106, 107, 108, 880, + 275, 881,-32766, 762, 761, 1059, 853,-32766,-32766,-32766, 143,-32766, 109,-32766,-32766,-32766,-32766,-32766,-32766,-32766, - -32766, 479, 480, 771,-32766,-32766,-32766, 1058,-32766, 291, + -32766, 479, 480, 771,-32766,-32766,-32766, 1059,-32766, 291, -32766,-32766,-32766,-32766,-32766, -194, 249, 263, 132, 390, - 775, 776, 777, 778,-32766,-32766, 433,-32766,-32766,-32766, + 775, 776, 777, 778, 308,-32766, 433,-32766,-32766,-32766, -32766, 291, 851, 832, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 808, 574, 809, 810, 811, 812, 800, 801, 345, 346, 803, 804, 789, 790, 791, 793, - 794, 795, 360, 835, 836, 837, 838, 839, 575, 962, - -274, -333, 796, 797, 576, 577, 843, 820, 818, 819, - 831, 815, 816, 1305, -195, 578, 579, 814, 580, 581, - 582, 583, 308, 584, 585,-32766, 82, 83, 84, -85, + 794, 795, 360, 835, 836, 837, 838, 839, 575,-32766, + -32766,-32766, 796, 797, 576, 577, -334, 820, 818, 819, + 831, 815, 816, 1306, -195, 578, 579, 814, 580, 581, + 582, 583, 312, 584, 585, 148, 82, 83, 84, -275, 817, 586, 587, 161, 146, 792, 763, 764, 765, 766, - 767, 1346, 768, 769, 770, 805, 806, 37, 961, 85, + 767, 1347, 768, 769, 770, 805, 806, 37, 24, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 310, 275,-32766,-32766,-32766,-32767,-32767, - -32767,-32767, 101, 102, 103, 1112, 109, 319, 625, 751, - 771,-32766,-32766,-32766, 852, -85,-32766, 1111,-32766,-32766, + 106, 107, 108, 1128, 275,-32766,-32766,-32766,-32767,-32767, + -32767,-32767, 101, 102, 103, 1113, 109, 321, 625, 751, + 771,-32766,-32766,-32766, 852, 341,-32766, 1112,-32766,-32766, -32766, 389, 388, -194, 772, 773, 774, 775, 776, 777, - 778, 432,-32766, 841,-32766,-32766, 1390, 341, 1285, 1391, + 778, 432,-32766, 841,-32766,-32766, 1391, 342, 1286, 1392, 832, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 808, 830, 809, 810, 811, 812, 800, 801, 802, 829, 803, 804, 789, 790, 791, 793, 794, 795, 834, - 835, 836, 837, 838, 839, 840, 1081, 433, -568, 796, - 797, 798, 799, 1365, 820, 818, 819, 831, 815, 816, - 1364, 24, 807, 813, 814, 821, 822, 824, 823, 138, - 825, 826, 1154, 322, 342, 286, 743, 817, 828, 827, - 49, 50, 51, 525, 52, 53, 1127, -110, 375, 852, - 54, 55, -110, 56, -110, 619,-32766, 81, 381, 304, - 1361, 322, -110, -110, -110, -110, -110, -110, -110, -110, - -110, -110, -110, 157, 938, -568, -568, 292, 978, 979, - 397, 1058, 845, 980, 451, 286, 1280, 1279, 1281, 57, - 58, -568, 974, 148, 59, 1113, 60, 243, 244, 61, + 835, 836, 837, 838, 839, 840, 1082, 433, -569, 796, + 797, 798, 799, 848, 820, 818, 819, 831, 815, 816, + 375,-32766, 807, 813, 814, 821, 822, 824, 823, 138, + 825, 826, 1155, 324, 381, 286, 743, 817, 828, 827, + 49, 50, 51, 525, 52, 53, 1059, -110, 397, 852, + 54, 55, -110, 56, -110, 619, -85, 81, 451, 304, + 1362, 324, -110, -110, -110, -110, -110, -110, -110, -110, + -110, -110, -110, 157, 938, -569, -569, 292, 979, 980, + -32766,-32766, 845, 981, 452, 286, 1281, 1280, 1282, 57, + 58, -569, 975, 849, 59, 1114, 60, 243, 244, 61, 62, 63, 64, 65, 66, 67, 68,-32766, 28, 265, - 69, 449, 526, 452, -347, 1055, 1311, 1312, 527, 938, - 852, 1055, 762, 761, 1309, 42, 20, 528, 938, 529, - 938, 530, 74, 531, 453, 701, 532, 533, 322, 843, - 1058, 44, 45, 455, 384, 383, 1058, 46, 534, 728, - -569, 235, 454, 373, 340, 858, 1285, 928, 729, 938, - 1271, -567, 847,-32766, 282, 536, 537, 538, 149, 725, - 282, 702, -78, -373, 1278, -373, 151, 540, 541, -58, - 1297, 1298, 1299, 1300, 1302, 1294, 1295, 296, 1058, 730, - -32766,-32766,-32766, 1301, 1296, 703, 704, 1280, 1279, 1281, - 297, -565, 928, 70, -154, -154, -154, 317, 318, 322, - 1276, 928, 291, 928, 1280, 1279, 1281, -569, -569, -154, - 282, -154, -57, -154, 753, -154, 139, 1055, -567, -567, - 322, 762, 761, -569, 1057, 382, 940, 852, 152, 399, - 723, 7, 928, 153, -567, -575, 978, 979, 469, 470, - 471, 535, 1058, 1280, 1279, 1281, -574, 102, 103, 914, - 974, -110, -110, -110, 28, 266,-32766,-32766, -565, -565, - 668, 21, -110, -110, 687, 688, 852, -110, 155, 48, - 1309, 940, 385, 386, -565, 723, -110, 147, 415, 880, - 940, 881, 940, 33, 723,-32766, 723, -154, 391, 392, + 69, 449, 526, 453, -348, 1056, 1312, 1313, 527, 938, + 852, 1056, -85, 454, 1310, 42, 20, 528, 938, 529, + 938, 530, 74, 531, 858, 701, 532, 533, 324, 843, + 1059, 44, 45, 455, 384, 383, 1059, 46, 534, 728, + -570, 235, 149, 373, 340, 151, 1286, 928, 729, 938, + 1272, -568, 847,-32766, 282, 536, 537, 538, 1366, 725, + 282, 702, 762, 761, 1279, 1365, 152, 540, 541, -78, + 1298, 1299, 1300, 1301, 1303, 1295, 1296, 296, 1059, 730, + 469, 470, 471, 1302, 1297, 703, 704, 1281, 1280, 1282, + 297, -566, 928, 70, -154, -154, -154, 319, 320, 324, + 1277, 928, 291, 928, 1281, 1280, 1282, -570, -570, -154, + 282, -154, 153, -154, 753, -154, 139, 1056, -568, -568, + 324, 762, 761, -570, 1058, 382, 940, 852, 155, 399, + 723, 7, 928, 33, -568, -576, 979, 980, -58, 963, + 962, 535, 1059, 1281, 1280, 1282, -575, 843, -57, 914, + 975, -110, -110, -110, 28, 266, 102, 103, -566, -566, + -32766,-32766, -110, -110, 668, 21, 852, -110, 123, 48, + 1310, 940, 687, 688, -566, 723, -110, 880, 124, 881, + 940, 135, 940, 136, 723,-32766, 723, -154, 142, 961, 32, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 659, 660, 1271, 297, 762, 761, - 74, 995, 123, 938, 124, 723, 322, -4, 938, -607, - 938, -607, 135, 540, 541, 136, 1297, 1298, 1299, 1300, - 1302, 1294, 1295, 1187, 1189, -307, 300, 301, -566, 1301, - 1296, 762, 761, 733, -565,-32766, 142, 156, 158, 72, - 740, 1278, 380, 159, 318, 322, 160, -87,-32766,-32766, - -32766, 287,-32766, -303,-32766, -84,-32766, -78, 280,-32766, - -73, 275, 387, 388,-32766,-32766,-32766, -72,-32766, -71, - -32766,-32766, 432, -70, 1278, -69,-32766, 429, 28, 265, - -68,-32766,-32766,-32766, -67,-32766, 928,-32766,-32766,-32766, - 852, 928,-32766, 928, 1309, -566, -566,-32766,-32766,-32766, - -66, -565, -565,-32766,-32766, -65, -46, -18, 140,-32766, - 429, -566, 274, 382, 283, 445, 739, -565, 297, 73, - 295,-32766, 742, -573, 978, 979, 937, 145, 281, 535, - 1271, 28, 266, 284, 285, 330, 109, 539, 974, -110, - -110, -110, 288, 852,-32766,-32766,-32766, 1309, 541, 125, - 1297, 1298, 1299, 1300, 1302, 1294, 1295, 293, 294, 144, - 955, 11, 843, 1301, 1296, 940, 712, 697, 590, 723, - 940, 1392, 940, 72, 723, -4, 723,-32766, 318, 322, - -50, 690, 305, 1271, 852, 1145, 714, 669, 975, 302, - 309, 657, 303, 1316, -531, 1318, 596, 674,-32766, -521, - 8, 541, 297, 1297, 1298, 1299, 1300, 1302, 1294, 1295, - 10, 476, 504, 137, 40, 27, 1301, 1296, 675, 691, - 623, 1244, 957,-32766, 379, 851, 72, 34, 41, 1278, - 322, 318, 322, 748, 0, 749,-32766,-32766,-32766, -277, - -32766, 0,-32766, 871,-32766, 0, 0,-32766, 1306, 0, + 119, 120, 121, 122, 147, 415, 1272, 297, 762, 761, + 74, 996, 156, 938, 158, 723, 324, -4, 938, -608, + 938, -608, 159, 540, 541, 160, 1298, 1299, 1300, 1301, + 1303, 1295, 1296, 1188, 1190, -308, 300, 301, -567, 1302, + 1297, 762, 761, 733, -566,-32766, 385, 386, -304, 72, + 740, 1279, 380, -87, 320, 324, 391, 392,-32766,-32766, + -32766, -84,-32766, -78,-32766, -73,-32766, 659, 660,-32766, + -72, -71, 387, 388,-32766,-32766,-32766, -70,-32766, -69, + -32766,-32766, 432, -68, 1279, -67,-32766, 429, 28, 265, + -66,-32766,-32766,-32766, -65,-32766, 928,-32766,-32766,-32766, + 852, 928,-32766, 928, 1310, -567, -567,-32766,-32766,-32766, + -46, -566, -566,-32766,-32766, -18, 140, 274, 283,-32766, + 429, -567, 739, 382, 742, 445, 937, -566, 297, 73, + 295,-32766, 145, -574, 979, 980, 287, 280, 281, 535, + 1272, 28, 266, 284, 285, 330, 275, 539, 975, -110, + -110, -110, 288, 852,-32766,-32766,-32766, 1310, 541, 125, + 1298, 1299, 1300, 1301, 1303, 1295, 1296, 293, 294, 109, + 955, 11, 843, 1302, 1297, 940, 144, 712, 852, 723, + 940, 697, 940, 72, 723, -4, 723, 1146, 320, 324, + -50, 10,-32766, 1272, 1393, 476, 657, 976, 303, 302, + 311, 590, 305, 669, -532, 1317, 714,-32766, 1319, -522, + 690, 541, 851, 1298, 1299, 1300, 1301, 1303, 1295, 1296, + 674, 675, 504, 137, 40, 8, 1302, 1297, 691, 27, + 379, 596, 623,-32766, 1307, 297, 72, 414, 957, 1279, + 0, 320, 324, -602, 41, 748,-32766,-32766,-32766, 0, + -32766, 0,-32766, 749,-32766, 0, 0,-32766, 0, 0, 0, 0,-32766,-32766,-32766, 938,-32766, 0,-32766,-32766, - 0, 0, 1278, 0,-32766, 429, 0, 919, 0,-32766, - -32766,-32766, 1019,-32766, 996,-32766,-32766,-32766, 938, 1003, - -32766, 863, 1310, 0, 0,-32766,-32766,-32766, 993,-32766, - 1004,-32766,-32766, 917, 991, 1278, 1116,-32766, 429, 1119, - 1120, 1117,-32766,-32766,-32766, 1156,-32766, 1118,-32766,-32766, - -32766, 1124, -601,-32766, 1333, 1350, 1383, 499,-32766,-32766, - -32766, 662,-32766, -600,-32766,-32766, -599, -575, 1278, 603, - -32766, 429, -574, -573, -572,-32766,-32766,-32766, 928,-32766, - -515,-32766,-32766,-32766, 1, 29,-32766, -275, 30, 39, - 43,-32766,-32766,-32766, -252, -252, -252,-32766,-32766, 71, - 382, 928, 75,-32766, 429, 76, 77, 78, 1285, 79, - 80, 978, 979, 141, 150,-32766, 535, -251, -251, -251, - -274, 154, 241, 382, 914, 974, -110, -110, -110, 326, - 361, 362, 363, 364, 978, 979, 365, 366, -16, 535, - 367, 368, 369, 370, 371, 374, 446, 914, 974, -110, - -110, -110,-32766, 13, 568, 372, 0, 940, 1278, 14, - 414, 723, -252, 15, 16,-32766,-32766,-32766, 18,-32766, - 355,-32766, 413,-32766, 495, 496,-32766, 503, 506, 507, - 940,-32766,-32766,-32766, 723, -251, 508,-32766,-32766, 852, - 509, 513, 514,-32766, 429, 515, 522, 601, 707, 1084, - 1227, 1307, 1083, 1064, 1266,-32766, 1060, -279, -102, 12, - 17, 22, 313, 412, 615, 620, 648, 713, 1231, 1284, - 1228, 1362, 0, 316, -110, -110, 376, 724, 727, -110, + 0, 0, 1279, 0,-32766, 429, 0, 0, 0,-32766, + -32766,-32766, 871,-32766, 863,-32766,-32766,-32766, 938, 919, + -32766, 1334, 1020, 1311, 0,-32766,-32766,-32766, 997,-32766, + 1004,-32766,-32766, 994, 1005, 1279, 917,-32766, 429, 992, + 1117, 1120,-32766,-32766,-32766, 1121,-32766, 1118,-32766,-32766, + -32766, 1157, -601,-32766, 1119, 1125, -278, 499,-32766,-32766, + -32766, 1351,-32766, 1384,-32766,-32766, 662, -276, 1279, 603, + -32766, 429, -600, -576, -575,-32766,-32766,-32766, 928,-32766, + -574,-32766,-32766,-32766, -573, -516,-32766, -275, 1, 29, + 30,-32766,-32766,-32766, -253, -253, -253,-32766,-32766, 39, + 382, 928, 43,-32766, 429, 71, 75, 76, 1286, 77, + 78, 979, 980, 79, 80,-32766, 535, -252, -252, -252, + 13, 141, 150, 382, 914, 975, -110, -110, -110, 154, + 241, 326, 361, 362, 979, 980, 363, 364, -16, 535, + 365, 366, 367, 368, 369, 370, 371, 914, 975, -110, + -110, -110,-32766, 14, 374, 446, 568, 940, 1279, 15, + 372, 723, -253, 16, 18,-32766,-32766,-32766, 355,-32766, + 413,-32766, 495,-32766, 496, 503,-32766, 506, 507, 508, + 940,-32766,-32766,-32766, 723, -252, 509,-32766,-32766, 852, + 513, 514, 515,-32766, 429, 522, 601, 707, 1085, 1228, + 1308, 1084, 1065, 1267, 1061,-32766, -280, -102, 12, 17, + 22, 315, 412, 615, 620, 648, 713, 1232, 1285, 1229, + 1363, 0, 34, 318, -110, -110, 376, 724, 727, -110, 731, 732, 734, 735, 736, 737, 741, 753, -110, 726, - 754, 0, 418, 745, 915, 1387, 0,-32766, 1389, 874, - 873, 968, 1011, 1388, 967, 965, 966, 969, 1259, 948, - 958, 946, 1155, 1151, 1105, 1001, 1002, 646, 1386, 297, - 1344, 1359, 74, 0, 0, 0, 0, 0, 322 + 754, 0, 418, 745, 915, 1388, 0,-32766, 1390, 874, + 873, 969, 1012, 1389, 968, 966, 967, 970, 1260, 948, + 958, 946, 1156, 1152, 1106, 1002, 1003, 646, 1387, 297, + 1345, 1360, 74, 1245, 0, 0, 324, 0, 324 ); protected array $actionCheck = array( @@ -531,109 +531,109 @@ class Php8 extends \PhpParser\ParserAbstract 80, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 9, 10, 11, 1, 37, 38, 30, 1, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 31, 30, 9, 10, 57, 116, 117, 118, 119, + 43, 31, 30, 116, 8, 57, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 106, 107, 108, 71, - 72, 73, 74, 75, 76, 77, 116, 80, 80, 150, + 72, 73, 74, 75, 76, 77, 116, 140, 80, 150, 70, 151, 152, 70, 30, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 8, 162, 8, 126, 127, 128, 129, 14, 131, + 122, 106, 162, 108, 126, 127, 128, 129, 8, 131, 132, 133, 134, 135, 136, 8, 8, 139, 140, 141, 142, 143, 144, 145, 70, 147, 148, 137, 138, 167, - 137, 138, 154, 155, 156, 8, 158, 160, 2, 3, + 137, 138, 154, 155, 156, 8, 158, 14, 2, 3, 4, 5, 6, 7, 166, 9, 10, 11, 12, 13, 116, 8, 167, 119, 120, 121, 122, 123, 124, 125, 9, 10, 11, 163, 51, 52, 53, 54, 55, 106, 57, 108, 116, 37, 38, 141, 163, 9, 10, 11, 8, 30, 69, 32, 33, 34, 35, 36, 37, 38, - 116, 137, 138, 57, 9, 10, 11, 141, 30, 165, + 9, 137, 138, 57, 9, 10, 11, 141, 30, 165, 32, 33, 34, 35, 36, 8, 8, 71, 72, 73, - 74, 75, 76, 77, 140, 30, 80, 32, 33, 34, + 74, 75, 76, 77, 8, 30, 80, 32, 33, 34, 35, 165, 159, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 73, - 166, 166, 126, 127, 128, 129, 80, 131, 132, 133, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 9, + 10, 11, 126, 127, 128, 129, 166, 131, 132, 133, 134, 135, 136, 1, 166, 139, 140, 141, 142, 143, - 144, 145, 8, 147, 148, 9, 9, 10, 11, 31, + 144, 145, 8, 147, 148, 14, 9, 10, 11, 166, 154, 155, 156, 14, 158, 2, 3, 4, 5, 6, - 7, 1, 9, 10, 11, 12, 13, 30, 122, 32, + 7, 1, 9, 10, 11, 12, 13, 30, 101, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 8, 57, 9, 10, 11, 44, 45, + 53, 54, 55, 126, 57, 9, 10, 11, 44, 45, 46, 47, 48, 49, 50, 163, 69, 8, 52, 167, - 57, 9, 10, 11, 82, 97, 30, 1, 32, 33, + 57, 9, 10, 11, 82, 8, 30, 1, 32, 33, 34, 106, 107, 166, 71, 72, 73, 74, 75, 76, 77, 116, 30, 80, 32, 33, 80, 8, 1, 83, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 1, 80, 70, 126, - 127, 128, 129, 1, 131, 132, 133, 134, 135, 136, - 8, 101, 139, 140, 141, 142, 143, 144, 145, 167, + 127, 128, 129, 80, 131, 132, 133, 134, 135, 136, + 8, 116, 139, 140, 141, 142, 143, 144, 145, 167, 147, 148, 163, 171, 8, 30, 167, 154, 155, 156, - 2, 3, 4, 5, 6, 7, 126, 101, 8, 82, - 12, 13, 106, 15, 108, 1, 116, 167, 8, 113, + 2, 3, 4, 5, 6, 7, 141, 101, 8, 82, + 12, 13, 106, 15, 108, 1, 31, 167, 8, 113, 1, 171, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 16, 1, 137, 138, 30, 117, 118, - 8, 141, 80, 122, 8, 30, 159, 160, 161, 51, - 52, 153, 131, 14, 56, 168, 58, 59, 60, 61, + 9, 10, 80, 122, 8, 30, 159, 160, 161, 51, + 52, 153, 131, 160, 56, 168, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 140, 70, 71, 72, 73, 74, 8, 168, 116, 78, 79, 80, 1, - 82, 116, 37, 38, 86, 87, 88, 89, 1, 91, + 82, 116, 97, 8, 86, 87, 88, 89, 1, 91, 1, 93, 165, 95, 8, 80, 98, 99, 171, 80, 141, 103, 104, 105, 106, 107, 141, 109, 110, 31, - 70, 97, 8, 115, 116, 8, 1, 84, 31, 1, - 122, 70, 160, 116, 165, 127, 128, 129, 14, 167, - 165, 116, 16, 106, 80, 108, 14, 139, 140, 16, + 70, 97, 14, 115, 116, 14, 1, 84, 31, 1, + 122, 70, 160, 116, 165, 127, 128, 129, 1, 167, + 165, 116, 37, 38, 80, 8, 14, 139, 140, 16, 142, 143, 144, 145, 146, 147, 148, 149, 141, 31, - 9, 10, 11, 155, 156, 140, 141, 159, 160, 161, + 132, 133, 134, 155, 156, 140, 141, 159, 160, 161, 162, 70, 84, 165, 75, 76, 77, 169, 170, 171, 116, 84, 165, 84, 159, 160, 161, 137, 138, 90, - 165, 92, 16, 94, 167, 96, 167, 116, 137, 138, + 165, 92, 14, 94, 167, 96, 167, 116, 137, 138, 171, 37, 38, 153, 140, 106, 163, 82, 14, 106, - 167, 108, 84, 14, 153, 165, 117, 118, 132, 133, - 134, 122, 141, 159, 160, 161, 165, 49, 50, 130, - 131, 132, 133, 134, 70, 71, 51, 52, 137, 138, - 75, 76, 117, 118, 75, 76, 82, 122, 14, 70, - 86, 163, 106, 107, 153, 167, 131, 101, 102, 106, - 163, 108, 163, 14, 167, 140, 167, 168, 106, 107, + 167, 108, 84, 14, 153, 165, 117, 118, 16, 72, + 73, 122, 141, 159, 160, 161, 165, 80, 16, 130, + 131, 132, 133, 134, 70, 71, 49, 50, 137, 138, + 51, 52, 117, 118, 75, 76, 82, 122, 16, 70, + 86, 163, 75, 76, 153, 167, 131, 106, 16, 108, + 163, 16, 163, 16, 167, 140, 167, 168, 16, 122, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 111, 112, 122, 162, 37, 38, + 26, 27, 28, 29, 101, 102, 122, 162, 37, 38, 165, 163, 16, 1, 16, 167, 171, 0, 1, 164, 1, 166, 16, 139, 140, 16, 142, 143, 144, 145, 146, 147, 148, 59, 60, 35, 137, 138, 70, 155, - 156, 37, 38, 31, 70, 74, 16, 16, 16, 165, - 31, 80, 153, 16, 170, 171, 16, 31, 87, 88, - 89, 37, 91, 35, 93, 31, 95, 31, 35, 98, - 31, 57, 106, 107, 103, 104, 105, 31, 74, 31, + 156, 37, 38, 31, 70, 74, 106, 107, 35, 165, + 31, 80, 153, 31, 170, 171, 106, 107, 87, 88, + 89, 31, 91, 31, 93, 31, 95, 111, 112, 98, + 31, 31, 106, 107, 103, 104, 105, 31, 74, 31, 109, 110, 116, 31, 80, 31, 115, 116, 70, 71, 31, 87, 88, 89, 31, 91, 84, 93, 127, 95, 82, 84, 98, 84, 86, 137, 138, 103, 104, 105, 31, 137, 138, 109, 110, 31, 31, 31, 31, 115, 116, 153, 31, 106, 31, 108, 31, 153, 162, 158, - 113, 127, 31, 165, 117, 118, 31, 31, 35, 122, - 122, 70, 71, 35, 35, 35, 69, 130, 131, 132, + 113, 127, 31, 165, 117, 118, 37, 35, 35, 122, + 122, 70, 71, 35, 35, 35, 57, 130, 131, 132, 133, 134, 37, 82, 9, 10, 11, 86, 140, 14, - 142, 143, 144, 145, 146, 147, 148, 37, 37, 70, - 38, 154, 80, 155, 156, 163, 80, 77, 89, 167, - 163, 83, 163, 165, 167, 168, 167, 85, 170, 171, - 31, 94, 114, 122, 82, 82, 92, 90, 131, 135, - 135, 113, 136, 150, 153, 150, 157, 96, 140, 153, - 153, 140, 162, 142, 143, 144, 145, 146, 147, 148, - 97, 97, 97, 31, 163, 153, 155, 156, 100, 100, - 157, 169, 158, 74, 153, 159, 165, 167, 163, 80, - 171, 170, 171, 163, -1, 163, 87, 88, 89, 166, - 91, -1, 93, 163, 95, -1, -1, 98, 164, -1, + 142, 143, 144, 145, 146, 147, 148, 37, 37, 69, + 38, 154, 80, 155, 156, 163, 70, 80, 82, 167, + 163, 77, 163, 165, 167, 168, 167, 82, 170, 171, + 31, 97, 85, 122, 83, 97, 113, 131, 136, 135, + 135, 89, 114, 90, 153, 150, 92, 140, 150, 153, + 94, 140, 159, 142, 143, 144, 145, 146, 147, 148, + 96, 100, 97, 31, 163, 153, 155, 156, 100, 153, + 153, 157, 157, 74, 164, 162, 165, 168, 158, 80, + -1, 170, 171, 165, 163, 163, 87, 88, 89, -1, + 91, -1, 93, 163, 95, -1, -1, 98, -1, -1, -1, -1, 103, 104, 105, 1, 74, -1, 109, 110, - -1, -1, 80, -1, 115, 116, -1, 163, -1, 87, - 88, 89, 163, 91, 163, 93, 127, 95, 1, 163, - 98, 164, 170, -1, -1, 103, 104, 105, 163, 74, + -1, -1, 80, -1, 115, 116, -1, -1, -1, 87, + 88, 89, 163, 91, 164, 93, 127, 95, 1, 163, + 98, 164, 163, 170, -1, 103, 104, 105, 163, 74, 163, 109, 110, 163, 163, 80, 163, 115, 116, 163, 163, 163, 87, 88, 89, 163, 91, 163, 93, 127, - 95, 163, 165, 98, 164, 164, 164, 102, 103, 104, - 105, 164, 74, 165, 109, 110, 165, 165, 80, 81, + 95, 163, 165, 98, 163, 163, 166, 102, 103, 104, + 105, 164, 74, 164, 109, 110, 164, 166, 80, 81, 115, 116, 165, 165, 165, 87, 88, 89, 84, 91, 165, 93, 127, 95, 165, 165, 98, 166, 165, 165, 165, 103, 104, 105, 100, 101, 102, 109, 110, 165, @@ -642,25 +642,25 @@ class Php8 extends \PhpParser\ParserAbstract 166, 165, 165, 106, 130, 131, 132, 133, 134, 165, 165, 165, 165, 165, 117, 118, 165, 165, 31, 122, 165, 165, 165, 165, 165, 165, 165, 130, 131, 132, - 133, 134, 74, 166, 165, 165, -1, 163, 80, 166, - 168, 167, 168, 166, 166, 87, 88, 89, 166, 91, + 133, 134, 74, 166, 165, 165, 165, 163, 80, 166, + 165, 167, 168, 166, 166, 87, 88, 89, 166, 91, 166, 93, 166, 95, 166, 166, 98, 166, 166, 166, 163, 103, 104, 105, 167, 168, 166, 109, 110, 82, 166, 166, 166, 115, 116, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 127, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, -1, 167, 117, 118, 167, 167, 167, 122, + 166, -1, 167, 167, 117, 118, 167, 167, 167, 122, 167, 167, 167, 167, 167, 167, 167, 167, 131, 167, 167, -1, 168, 168, 168, 168, -1, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 162, - 168, 168, 165, -1, -1, -1, -1, -1, 171 + 168, 168, 165, 169, -1, -1, 171, -1, 171 ); protected array $actionBase = array( 0, -2, 156, 559, 757, 1004, 1027, 485, 292, 357, - -60, 432, 557, 752, 752, 759, 752, 548, 588, 894, - 503, 503, 503, 836, 313, 313, 836, 313, 711, 711, + -60, 432, 557, 752, 752, 759, 752, 548, 588, 901, + 503, 503, 503, 837, 313, 313, 837, 313, 711, 711, 711, 711, 744, 744, 965, 965, 998, 932, 899, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, @@ -674,63 +674,63 @@ class Php8 extends \PhpParser\ParserAbstract 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, - 1088, 1088, 33, 20, 484, 1080, 709, 1056, 1062, 1058, - 1063, 1054, 1053, 1057, 1059, 1064, 1110, 1112, 846, 1109, - 1113, 1060, 907, 1055, 1061, 892, 297, 297, 297, 297, + 1088, 1088, 33, 20, 484, 1080, 659, 1055, 1061, 1057, + 1062, 1053, 1052, 1056, 1058, 1063, 1110, 1112, 841, 1109, + 1113, 1059, 912, 1054, 1060, 898, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, - 297, 297, 296, 885, 44, 611, 611, 611, 611, 611, - 611, 611, 611, 611, 611, 611, 611, 611, 611, 611, - 611, 611, 611, 611, 611, 624, 624, 22, 22, 22, + 297, 297, 201, 885, 501, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 624, 624, 22, 22, 22, 362, 811, 758, 811, 811, 811, 811, 811, 811, 811, 811, 346, 205, 188, 714, 171, 171, 7, 7, 7, 7, 7, 376, 1117, 54, 585, 585, 314, 314, 314, - 314, 350, 515, 497, 435, 397, -40, 638, 477, 706, + 314, 227, 565, 15, 435, 397, -40, 647, 477, 706, 429, 429, 541, 541, 76, 76, 541, 541, 541, 133, - 133, 370, 370, 370, 370, 83, -71, 808, 489, 489, - 489, 489, 808, 808, 808, 808, 795, 862, 808, 808, - 808, 510, 521, 708, 645, 645, 613, -70, -70, 613, - 391, -70, 320, 975, 316, 982, 94, 807, 275, 595, - 94, 1000, 368, 561, 561, 639, 561, 561, 561, 816, - 606, 816, 1052, 842, 842, 825, 779, 898, 1082, 1065, - 868, 1107, 869, 1108, 1083, 299, 546, 10, 13, 74, - 776, 1051, 1051, 1051, 1051, 1051, 1051, 1051, 1051, 1051, - 1051, 1051, 1051, 809, 515, 1052, -3, 1105, 1106, 809, - 809, 809, 515, 515, 515, 515, 515, 515, 515, 515, - 826, 515, 515, 633, -3, 625, 629, -3, 850, 515, + 133, 335, 335, 335, 335, 83, -71, 807, 489, 489, + 489, 489, 807, 807, 807, 807, 798, 863, 807, 977, + 986, 807, 807, 510, 521, 708, 649, 649, 611, -70, + -70, 611, 391, -70, 320, 316, -63, 806, 275, 595, + -63, 1005, 368, 561, 561, 639, 561, 561, 561, 793, + 680, 793, 1051, 847, 847, 819, 774, 902, 1082, 1064, + 861, 1107, 868, 1108, 1083, 299, 488, 10, 13, 74, + 772, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, + 1050, 1050, 1050, 1115, 565, 1051, 363, 1105, 1106, 1115, + 1115, 1115, 565, 565, 565, 565, 565, 565, 565, 565, + 824, 565, 565, 696, 363, 629, 637, 363, 850, 565, 796, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, -18, 33, 33, 20, 5, 5, 33, 202, - 37, 5, 5, 5, 487, 5, 33, 33, 33, 606, - 754, 789, 622, 278, 813, 217, 754, 754, 754, 115, - 114, 128, 740, 768, 563, 832, 832, 832, 853, 929, - 929, 832, 852, 832, 853, 832, 832, 929, 929, 790, - 929, 163, 506, 389, 480, 535, 929, 294, 832, 832, - 832, 832, 805, 929, 113, 556, 832, 218, 192, 832, - 832, 805, 804, 833, 806, 929, 929, 929, 805, 470, - 806, 806, 806, 820, 822, 828, 831, 359, 345, 577, - 147, 872, 831, 831, 832, 502, 828, 831, 828, 831, - 814, 831, 831, 831, 828, 831, 852, 456, 831, 771, - 574, 127, 831, 832, 19, 944, 947, 766, 950, 934, - 951, 991, 952, 954, 1070, 925, 967, 935, 955, 999, - 933, 930, 845, 736, 738, 797, 791, 919, 817, 817, - 817, 912, 917, 817, 817, 817, 817, 817, 817, 817, - 817, 736, 834, 821, 829, 976, 746, 749, 1041, 793, - 1086, 802, 975, 944, 954, 774, 935, 955, 933, 930, - 824, 819, 799, 803, 794, 792, 786, 788, 827, 1043, - 958, 801, 770, 1012, 977, 1085, 1066, 978, 981, 1016, - 1044, 830, 1045, 1087, 839, 1090, 1091, 867, 985, 1071, - 817, 911, 897, 900, 982, 918, 736, 901, 1046, 997, - 810, 1018, 1019, 1069, 864, 838, 902, 1092, 986, 987, - 988, 1073, 1074, 815, 1003, 823, 1021, 865, 1002, 1022, - 1023, 1030, 1034, 1075, 1093, 1076, 908, 1077, 854, 847, - 931, 851, 1094, 509, 848, 849, 871, 990, 584, 974, - 1078, 1084, 1095, 1035, 1036, 1039, 1096, 1097, 959, 859, - 1007, 837, 1008, 964, 861, 866, 592, 870, 1047, 773, - 843, 855, 654, 659, 1098, 1099, 1100, 966, 835, 840, - 875, 877, 1048, 764, 1050, 1101, 694, 880, 1102, 1042, - 772, 777, 586, 636, 593, 780, 844, 1079, 812, 818, - 863, 989, 777, 841, 881, 1103, 883, 886, 887, 1040, - 888, 1014, 1104, 0, 0, 0, 0, 0, 0, 0, + 37, 5, 5, 5, 487, 5, 33, 33, 33, 680, + 829, 814, 690, 455, 815, 217, 829, 829, 829, 120, + 143, 128, 740, 753, 563, 832, 832, 832, 845, 933, + 933, 832, 836, 832, 845, 832, 832, 933, 933, 813, + 933, 163, 480, 367, 456, 506, 933, 226, 832, 832, + 832, 832, 805, 933, 46, 535, 832, 218, 192, 832, + 832, 805, 804, 827, 802, 933, 933, 933, 805, 442, + 802, 802, 802, 822, 830, 823, 826, 359, 294, 556, + 147, 872, 826, 826, 832, 470, 823, 826, 823, 826, + 820, 826, 826, 826, 823, 826, 836, 389, 826, 736, + 545, 127, 826, 832, 19, 950, 951, 762, 952, 944, + 954, 1000, 955, 958, 1070, 930, 975, 947, 959, 1001, + 935, 934, 835, 692, 702, 812, 791, 929, 840, 840, + 840, 918, 919, 840, 840, 840, 840, 840, 840, 840, + 840, 692, 810, 817, 852, 978, 705, 707, 1040, 795, + 1086, 1114, 977, 950, 958, 770, 947, 959, 935, 934, + 803, 799, 792, 794, 788, 786, 779, 780, 825, 1042, + 966, 801, 712, 1008, 981, 1085, 1066, 982, 985, 1014, + 1043, 859, 1044, 1087, 846, 1090, 1091, 860, 987, 1071, + 840, 917, 818, 867, 986, 925, 692, 907, 1045, 964, + 1065, 1016, 1018, 1069, 838, 851, 909, 1092, 988, 989, + 990, 1073, 1074, 821, 997, 900, 1019, 865, 809, 1021, + 1022, 1023, 1030, 1075, 1093, 1076, 897, 1077, 866, 853, + 911, 864, 1094, 291, 848, 849, 871, 999, 568, 976, + 1078, 1084, 1095, 1034, 1035, 1036, 1096, 1097, 967, 869, + 1003, 856, 1007, 931, 875, 877, 571, 870, 1046, 842, + 843, 855, 592, 638, 1098, 1099, 1100, 974, 831, 844, + 880, 881, 1047, 839, 1048, 1101, 654, 883, 1102, 1041, + 738, 746, 593, 672, 662, 749, 854, 1079, 816, 828, + 834, 991, 746, 833, 886, 1103, 887, 888, 892, 1039, + 894, 1012, 1104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, 468, 468, @@ -759,34 +759,34 @@ class Php8 extends \PhpParser\ParserAbstract 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 524, 524, 297, 297, 297, 297, 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, 297, 297, 297, - 0, 297, 297, 297, 297, 297, 297, 297, 790, 524, + 0, 297, 297, 297, 297, 297, 297, 297, 813, 524, 524, 524, 524, 133, 133, 133, 133, -95, -95, -95, 524, 524, 391, 133, 524, 391, 524, 524, 524, 524, 524, 524, 524, 524, 524, 0, 0, 524, 524, 524, - 524, -3, -70, 524, 852, 852, 852, 852, 524, 524, - 524, 524, -70, -70, 524, 524, 524, 0, 0, 0, - 133, 133, -3, 0, 0, -3, 0, 0, 852, 206, - 852, 206, 524, 391, 790, 442, 524, 299, 0, 0, - 0, 0, 0, 0, 0, -3, 852, -3, 515, -70, - -70, 515, 515, 5, 33, 442, 616, 616, 616, 616, - 33, 0, 0, 0, 0, 0, 606, 790, 790, 790, - 790, 790, 790, 790, 790, 790, 790, 790, 790, 852, - 0, 790, 0, 790, 790, 852, 852, 852, 0, 0, - 0, 0, 0, 0, 0, 0, 929, 0, 0, 0, - 0, 0, 0, 0, 852, 0, 929, 0, 0, 0, + 524, 363, -70, 524, 836, 836, 836, 836, 524, 524, + 524, 524, -70, -70, 524, 607, 607, 524, 524, 0, + 0, 0, 133, 133, 363, 0, 0, 363, 0, 0, + 836, 836, 524, 391, 813, 597, 524, 299, 0, 0, + 0, 0, 0, 0, 0, 363, 836, 363, 565, -70, + -70, 565, 565, 5, 33, 597, 643, 643, 643, 643, + 33, 0, 0, 0, 0, 0, 680, 813, 813, 813, + 813, 813, 813, 813, 813, 813, 813, 813, 813, 836, + 0, 813, 0, 813, 813, 836, 836, 836, 0, 0, + 0, 0, 0, 0, 0, 0, 933, 0, 0, 0, + 0, 0, 0, 0, 836, 0, 933, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 852, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 817, 864, 0, 0, - 864, 0, 817, 817, 817, 0, 0, 0, 870, 764 + 0, 0, 0, 0, 0, 0, 836, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 840, 838, 0, 0, + 838, 0, 840, 840, 840, 0, 0, 0, 870, 839 ); protected array $actionDefault = array( 3,32767, 102,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 100,32767, 619, 619, - 619, 619,32767,32767, 256, 102,32767,32767, 490, 407, - 407, 407,32767,32767, 563, 563, 563, 563, 563,32767, - 32767,32767,32767,32767,32767, 490,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 100,32767, 620, 620, + 620, 620,32767,32767, 257, 102,32767,32767, 491, 408, + 408, 408,32767,32767, 564, 564, 564, 564, 564,32767, + 32767,32767,32767,32767,32767, 491,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, @@ -794,149 +794,153 @@ class Php8 extends \PhpParser\ParserAbstract 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767, 36, 7, 8, 10, - 11, 49, 17, 329, 100,32767,32767,32767,32767,32767, + 11, 49, 17, 330, 100,32767,32767,32767,32767,32767, 32767,32767,32767, 102,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 394, 612,32767,32767,32767, + 32767,32767,32767,32767,32767, 395, 613,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 494, 473, 474, 476, - 477, 406, 564, 618, 332, 615, 334, 405, 146, 344, - 335, 244, 260, 495, 261, 496, 499, 500, 217, 391, - 150, 151, 437, 491, 439, 489, 493, 438, 412, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 410, 411, 492,32767,32767, 470, 469, 468, - 435,32767,32767,32767,32767,32767,32767,32767,32767, 102, - 32767, 436, 440, 443, 409, 441, 442, 459, 460, 457, - 458, 461,32767,32767, 321,32767,32767, 462, 463, 464, - 465, 372, 196, 370,32767,32767, 111, 444, 321, 111, - 32767,32767,32767,32767,32767,32767,32767,32767,32767, 450, - 451,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 495, 474, 475, 477, + 478, 407, 565, 619, 333, 616, 335, 406, 146, 345, + 336, 245, 261, 496, 262, 497, 500, 501, 218, 392, + 150, 151, 438, 492, 440, 490, 494, 439, 413, 419, + 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 430, 431, 411, 412, 493,32767,32767, 471, 470, 469, + 436,32767,32767,32767,32767,32767,32767,32767,32767, 102, + 32767, 437, 441, 444, 410, 442, 443, 460, 461, 458, + 459, 462,32767,32767, 322,32767,32767, 463, 464, 465, + 466, 373, 196, 371,32767,32767, 111, 445, 322, 111, + 32767,32767,32767,32767,32767,32767,32767,32767,32767, 451, + 452,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767, 102,32767, - 100, 507, 557, 467, 445, 446,32767, 532,32767, 102, - 32767, 534,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767, 559, 432, 434, 527, 613, 413, 616,32767, - 520, 100, 196,32767, 533, 196, 196,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 558,32767, 626, - 520, 110, 110, 110, 110, 110, 110, 110, 110, 110, + 32767,32767, 100, 508, 558, 468, 446, 447,32767, 533, + 32767, 102,32767, 535,32767,32767,32767,32767,32767,32767, + 32767,32767, 560, 433, 435, 528, 614, 414, 617,32767, + 521, 100, 196,32767, 534, 196, 196,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767, 559,32767, 627, + 521, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,32767, 196, 110,32767, 110, 110,32767, 32767, 100, 196, 196, 196, 196, 196, 196, 196, 196, - 535, 196, 196, 191,32767, 270, 272, 102, 581, 196, - 537,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 536, 196, 196, 191,32767, 271, 273, 102, 582, 196, + 538,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 394,32767,32767,32767,32767, 520, - 455, 139,32767, 522, 139, 565, 447, 448, 449, 565, - 565, 565, 317, 294,32767,32767,32767,32767,32767, 535, - 535, 100, 100, 100, 100,32767,32767,32767,32767, 111, - 506, 99, 99, 99, 99, 99, 103, 101,32767,32767, - 32767,32767, 225,32767, 101, 99,32767, 101, 101,32767, - 32767, 225, 227, 214, 229,32767, 585, 586, 225, 101, - 229, 229, 229, 249, 249, 509, 323, 101, 99, 101, - 101, 198, 323, 323,32767, 101, 509, 323, 509, 323, - 200, 323, 323, 323, 509, 323,32767, 101, 323, 216, - 99, 99, 323,32767,32767,32767,32767, 522,32767,32767, - 32767,32767,32767,32767,32767, 224,32767,32767,32767,32767, - 32767,32767,32767,32767, 552,32767, 570, 583, 453, 454, - 456, 569, 567, 478, 479, 480, 481, 482, 483, 484, - 486, 614,32767, 526,32767,32767,32767, 343,32767, 624, - 32767,32767,32767, 9, 74, 515, 42, 43, 51, 57, - 541, 542, 543, 544, 538, 539, 545, 540,32767,32767, + 32767,32767,32767,32767, 395,32767,32767,32767,32767, 521, + 456, 139,32767, 523, 139, 566, 448, 449, 450, 566, + 566, 566, 318, 295,32767,32767,32767,32767,32767, 536, + 536, 100, 100, 100, 100,32767,32767,32767,32767, 111, + 507, 99, 99, 99, 99, 99, 103, 101,32767,32767, + 32767,32767, 226,32767, 101, 99,32767, 101, 101,32767, + 32767, 226, 228, 215, 230,32767, 586, 587, 226, 101, + 230, 230, 230, 250, 250, 510, 324, 101, 99, 101, + 101, 198, 324, 324,32767, 101, 510, 324, 510, 324, + 200, 324, 324, 324, 510, 324,32767, 101, 324, 217, + 99, 99, 324,32767,32767,32767,32767, 523,32767,32767, + 32767,32767,32767,32767,32767, 225,32767,32767,32767,32767, + 32767,32767,32767,32767, 553,32767, 571, 584, 454, 455, + 457, 570, 568, 479, 480, 481, 482, 483, 484, 485, + 487, 615,32767, 527,32767,32767,32767, 344,32767, 625, + 32767,32767,32767, 9, 74, 516, 42, 43, 51, 57, + 542, 543, 544, 545, 539, 540, 546, 541,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767, 625,32767, 565,32767,32767,32767,32767, - 452, 547, 591,32767,32767, 566, 617,32767,32767,32767, + 32767,32767,32767, 626,32767, 566,32767,32767,32767,32767, + 453, 548, 592,32767,32767, 567, 618,32767,32767,32767, 32767,32767,32767,32767, 139,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 552,32767, 137,32767,32767, - 32767,32767,32767,32767,32767,32767, 548,32767,32767,32767, - 565,32767,32767,32767,32767, 319, 316,32767,32767,32767, + 32767,32767,32767,32767,32767, 553,32767, 137,32767,32767, + 32767,32767,32767,32767,32767,32767, 549,32767,32767,32767, + 566,32767,32767,32767,32767, 320, 317,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767, 565,32767,32767,32767,32767,32767, 296, - 32767, 313,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767, 566,32767,32767,32767,32767,32767, 297, + 32767, 314,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 390, 522, 299, 301, 302,32767,32767,32767,32767, 366, + 391, 523, 300, 302, 303,32767,32767,32767,32767, 367, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767, 153, 153, 3, 3, 346, 153, 153, - 153, 346, 346, 153, 346, 346, 346, 153, 153, 153, - 153, 153, 153, 153, 282, 186, 264, 267, 249, 249, - 153, 358, 153, 392, 392, 401 + 32767,32767,32767, 153, 153, 3, 3, 347, 153, 153, + 153, 347, 347, 153, 347, 347, 347, 153, 153, 153, + 153, 153, 153, 153, 283, 186, 265, 268, 250, 250, + 153, 359, 153, 393, 393, 402 ); protected array $goto = array( - 194, 194, 1056, 490, 708, 279, 276, 279, 279, 994, - 492, 551, 551, 911, 868, 911, 911, 551, 717, 551, - 551, 551, 551, 551, 551, 551, 551, 166, 166, 166, + 194, 194, 1057, 995, 708, 279, 276, 279, 279, 622, + 636, 639, 640, 641, 642, 663, 664, 665, 719, 721, + 717, 561, 561, 561, 561, 1088, 616, 166, 166, 166, 166, 218, 195, 191, 191, 176, 178, 213, 191, 191, 191, 191, 191, 192, 192, 192, 192, 192, 186, 187, 188, 189, 190, 215, 213, 216, 548, 549, 430, 550, - 553, 554, 555, 556, 557, 558, 559, 560, 1173, 167, + 553, 554, 555, 556, 557, 558, 559, 560, 1174, 167, 168, 169, 193, 170, 171, 172, 164, 173, 174, 175, 177, 212, 214, 217, 237, 240, 251, 252, 253, 255, 256, 257, 258, 259, 260, 261, 267, 268, 269, 270, - 277, 289, 290, 314, 315, 436, 437, 438, 610, 219, + 277, 289, 290, 316, 317, 436, 437, 438, 610, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 186, 187, 188, 189, 190, - 215, 1173, 196, 197, 198, 199, 238, 179, 180, 200, + 215, 1174, 196, 197, 198, 199, 238, 179, 180, 200, 181, 201, 197, 182, 239, 196, 163, 202, 203, 183, 204, 205, 206, 184, 207, 208, 165, 209, 210, 211, - 185, 872, 563, 1087, 563, 563, 869, 1104, 1376, 1376, - 478, 478, 595, 473, 563, 612, 747, 649, 651, 478, - 351, 671, 1222, 1376, 870, 695, 698, 1029, 706, 715, - 1025, 722, 1059, 1059, 693, 971, 466, 844, 1051, 1067, - 1068, 988, 988, 988, 988, 1379, 1379, 466, 982, 989, - 356, 356, 356, 356, 927, 922, 923, 936, 878, 924, - 875, 925, 926, 876, 879, 1018, 930, 883, 990, 428, - 746, 882, 343, 564, 1027, 1022, 440, 673, 904, 1110, - 1106, 1107, 435, 337, 333, 334, 336, 605, 439, 338, - 441, 650, 602, 344, 343, 611, 1123, 349, 1277, 1056, - 1277, 1277, 633, 670, 459, 459, 720, 459, 459, 1056, - 1277, 519, 711, 1056, 1121, 1056, 1056, 1056, 1056, 1056, - 1056, 1056, 1056, 1056, 850, 523, 1056, 1056, 1056, 1056, - 666, 667, 1277, 684, 685, 686, 1366, 1277, 1277, 1277, - 1277, 359, 1015, 1277, 1277, 1277, 1358, 1358, 1358, 1358, - 672, 359, 359, 403, 406, 613, 617, 468, 1062, 1061, - 468, 944, 359, 359, 401, 945, 359, 600, 850, 1393, - 850, 960, 1170, 960, 622, 636, 639, 640, 641, 642, - 663, 664, 665, 719, 721, 567, 1253, 963, 359, 359, - 1080, 1254, 1257, 964, 865, 1258, 678, 865, 572, 565, - 931, 450, 932, 459, 459, 459, 459, 459, 459, 459, - 459, 459, 459, 459, 459, 635, 635, 459, 448, 459, - 459, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, - 1308, 1130, 1158, 1131, 694, 323, 565, 572, 597, 598, - 325, 608, 614, 1338, 629, 630, 865, 1327, 1327, 487, - 1351, 1352, 25, 1327, 1327, 1327, 1327, 1327, 1327, 1327, - 1327, 1327, 1327, 1065, 1066, 424, 561, 561, 561, 561, - 1349, 616, 1349, 1349, 352, 353, 339, 1324, 1324, 643, - 645, 647, 1349, 1324, 1324, 1324, 1324, 1324, 1324, 1324, - 1324, 1324, 1324, 566, 592, 566, 434, 567, 624, 566, - 862, 592, 886, 404, 472, 1360, 1360, 1360, 1360, 271, - 320, 628, 320, 320, 247, 247, 481, 609, 482, 483, - 898, 321, 307, 885, 896, 552, 552, 1384, 1385, 1345, - 891, 552, 552, 552, 552, 552, 552, 552, 552, 552, - 552, 245, 245, 245, 245, 242, 248, 1272, 977, 416, - 417, 705, 894, 410, 682, 846, 683, 1268, 421, 422, - 423, 1270, 696, 888, 511, 425, 512, 705, 1153, 347, - 705, 331, 518, 1037, 5, 618, 6, 865, 949, 1160, - 1095, 899, 887, 1092, 1096, 750, 1347, 1347, 1095, 1093, - 1034, 986, 419, 716, 997, 1353, 1354, 1047, 890, 488, - 676, 1013, 606, 627, 1273, 1274, 884, 1260, 442, 411, - 900, 999, 378, 860, 0, 1097, 0, 987, 1267, 1144, - 1260, 0, 442, 0, 755, 755, 0, 0, 1063, 1063, - 0, 0, 1275, 1335, 1336, 677, 1074, 1070, 1071, 1142, - 903, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 185, 872, 563, 869, 563, 563, 595, 1105, 870, 351, + 747, 649, 651, 865, 563, 671, 865, 612, 428, 695, + 698, 1030, 706, 715, 1026, 722, 1060, 1060, 693, 972, + 633, 670, 1052, 1068, 1069, 844, 466, 911, 868, 911, + 911, 989, 989, 989, 989, 490, 468, 466, 904, 468, + 983, 990, 492, 602, 927, 922, 923, 936, 878, 924, + 875, 925, 926, 876, 879, 865, 930, 883, 1033, 1033, + 349, 882, 403, 406, 613, 617, 440, 673, 1367, 1111, + 1107, 1108, 435, 337, 333, 334, 336, 605, 439, 338, + 441, 650, 450, 356, 356, 356, 356, 473, 1278, 1057, + 1278, 1278, 478, 478, 459, 459, 1223, 459, 459, 1057, + 1278, 478, 931, 1057, 932, 1057, 1057, 1057, 1057, 1057, + 1057, 1057, 1057, 1057, 523, 401, 1057, 1057, 1057, 1057, + 666, 667, 1278, 684, 685, 686, 1016, 1278, 1278, 1278, + 1278, 850, 600, 1278, 359, 672, 1278, 1278, 1359, 1359, + 1359, 1359, 1063, 1062, 359, 359, 1171, 1254, 964, 960, + 960, 944, 1255, 1258, 965, 945, 1259, 359, 359, 635, + 635, 359, 886, 1394, 1081, 1309, 1309, 1309, 1309, 1309, + 1309, 1309, 1309, 1309, 1309, 850, 448, 850, 567, 694, + 898, 359, 359, 885, 1066, 1067, 865, 572, 565, 1131, + 1159, 1132, 862, 459, 459, 459, 459, 459, 459, 459, + 459, 459, 459, 459, 459, 1328, 1328, 459, 678, 459, + 459, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, + 1328, 339, 1377, 1377, 309, 565, 572, 597, 598, 310, + 608, 614, 343, 629, 630, 628, 1339, 1325, 1325, 1377, + 434, 25, 624, 1325, 1325, 1325, 1325, 1325, 1325, 1325, + 1325, 1325, 1325, 352, 353, 344, 343, 978, 424, 1380, + 1380, 410, 1350, 1019, 1350, 1350, 991, 891, 746, 552, + 552, 564, 1028, 1023, 1350, 552, 552, 552, 552, 552, + 552, 552, 552, 552, 552, 566, 592, 566, 705, 888, + 567, 566, 846, 592, 1154, 404, 472, 1361, 1361, 1361, + 1361, 987, 419, 716, 705, 323, 307, 705, 481, 609, + 482, 483, 899, 887, 1093, 1097, 896, 1354, 1355, 1385, + 1386, 551, 551, 1346, 5, 998, 6, 551, 1269, 551, + 551, 551, 551, 551, 551, 551, 551, 247, 247, 511, + 1273, 512, 271, 322, 894, 322, 322, 518, 988, 487, + 1352, 1353, 606, 627, 1271, 643, 645, 647, 1038, 1094, + 750, 1048, 411, 331, 245, 245, 245, 245, 242, 248, + 1143, 903, 1096, 488, 442, 1145, 416, 417, 1348, 1348, + 1096, 682, 1000, 683, 900, 421, 422, 423, 442, 696, + 378, 0, 425, 1098, 1064, 1064, 347, 1274, 1275, 0, + 1261, 677, 1075, 1071, 1072, 618, 860, 0, 949, 1161, + 0, 0, 0, 1261, 0, 0, 0, 0, 611, 1124, + 1035, 0, 0, 0, 0, 1276, 1336, 1337, 890, 720, + 676, 1014, 0, 0, 519, 711, 884, 1122, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1268, 0, + 0, 0, 0, 0, 0, 0, 0, 755, 755, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1032, 1032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 250, 250 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 250, 250 ); protected array $gotoCheck = array( - 42, 42, 73, 84, 73, 23, 23, 23, 23, 49, - 84, 162, 162, 25, 25, 25, 25, 162, 9, 162, - 162, 162, 162, 162, 162, 162, 162, 42, 42, 42, + 42, 42, 73, 49, 73, 23, 23, 23, 23, 81, + 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, + 9, 107, 107, 107, 107, 128, 107, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, @@ -950,106 +954,110 @@ class Php8 extends \PhpParser\ParserAbstract 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 15, 19, 128, 19, 19, 26, 15, 188, 188, - 154, 154, 48, 156, 19, 131, 48, 48, 48, 154, - 97, 48, 156, 188, 27, 48, 48, 48, 48, 48, - 48, 48, 89, 89, 89, 89, 19, 6, 89, 89, - 89, 19, 19, 19, 19, 188, 188, 19, 19, 19, - 24, 24, 24, 24, 15, 15, 15, 15, 15, 15, - 15, 15, 15, 15, 15, 50, 15, 15, 50, 43, - 50, 15, 174, 50, 50, 50, 66, 66, 45, 15, + 42, 15, 19, 26, 19, 19, 48, 15, 27, 97, + 48, 48, 48, 22, 19, 48, 22, 131, 43, 48, + 48, 48, 48, 48, 48, 48, 89, 89, 89, 89, + 56, 56, 89, 89, 89, 6, 19, 25, 25, 25, + 25, 19, 19, 19, 19, 84, 83, 19, 45, 83, + 19, 19, 84, 178, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 22, 15, 15, 107, 107, + 185, 15, 59, 59, 59, 59, 66, 66, 187, 15, 15, 15, 66, 66, 66, 66, 66, 66, 66, 66, - 66, 66, 178, 174, 174, 8, 8, 185, 73, 73, - 73, 73, 56, 56, 23, 23, 8, 23, 23, 73, - 73, 8, 8, 73, 8, 73, 73, 73, 73, 73, - 73, 73, 73, 73, 12, 76, 73, 73, 73, 73, - 86, 86, 73, 86, 86, 86, 187, 73, 73, 73, - 73, 14, 103, 73, 73, 73, 9, 9, 9, 9, - 64, 14, 14, 59, 59, 59, 59, 83, 119, 119, - 83, 73, 14, 14, 62, 73, 14, 104, 12, 14, - 12, 9, 155, 9, 81, 81, 81, 81, 81, 81, - 81, 81, 81, 81, 81, 14, 79, 79, 14, 14, - 115, 79, 79, 79, 22, 79, 121, 22, 76, 76, - 65, 83, 65, 23, 23, 23, 23, 23, 23, 23, - 23, 23, 23, 23, 23, 108, 108, 23, 113, 23, - 23, 108, 108, 108, 108, 108, 108, 108, 108, 108, - 108, 146, 146, 146, 117, 76, 76, 76, 76, 76, - 76, 76, 76, 14, 76, 76, 22, 176, 176, 182, - 182, 182, 76, 176, 176, 176, 176, 176, 176, 176, - 176, 176, 176, 120, 120, 14, 107, 107, 107, 107, - 131, 107, 131, 131, 97, 97, 29, 177, 177, 85, - 85, 85, 131, 177, 177, 177, 177, 177, 177, 177, - 177, 177, 177, 9, 9, 9, 13, 14, 13, 9, - 18, 9, 35, 9, 9, 131, 131, 131, 131, 24, - 24, 80, 24, 24, 5, 5, 9, 9, 9, 9, - 35, 175, 175, 35, 9, 179, 179, 9, 9, 131, - 39, 179, 179, 179, 179, 179, 179, 179, 179, 179, - 179, 5, 5, 5, 5, 5, 5, 20, 92, 82, - 82, 7, 9, 28, 82, 7, 82, 166, 82, 82, - 82, 14, 82, 37, 160, 82, 160, 7, 153, 82, - 7, 9, 160, 110, 46, 17, 46, 22, 17, 17, - 131, 16, 16, 16, 16, 99, 131, 131, 131, 130, - 17, 93, 93, 93, 16, 184, 184, 114, 17, 157, - 17, 17, 2, 2, 20, 20, 17, 20, 118, 31, - 41, 96, 138, 20, -1, 133, -1, 16, 17, 149, - 20, -1, 118, -1, 24, 24, -1, -1, 118, 118, - -1, -1, 20, 20, 20, 118, 118, 118, 118, 16, - 16, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 66, 66, 83, 24, 24, 24, 24, 156, 73, 73, + 73, 73, 154, 154, 23, 23, 156, 23, 23, 73, + 73, 154, 65, 73, 65, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 76, 62, 73, 73, 73, 73, + 86, 86, 73, 86, 86, 86, 103, 73, 73, 73, + 73, 12, 104, 73, 14, 64, 73, 73, 9, 9, + 9, 9, 119, 119, 14, 14, 155, 79, 79, 9, + 9, 73, 79, 79, 79, 73, 79, 14, 14, 108, + 108, 14, 35, 14, 115, 108, 108, 108, 108, 108, + 108, 108, 108, 108, 108, 12, 113, 12, 14, 117, + 35, 14, 14, 35, 120, 120, 22, 76, 76, 146, + 146, 146, 18, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 176, 176, 23, 121, 23, + 23, 176, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 29, 188, 188, 76, 76, 76, 76, 76, 76, + 76, 76, 174, 76, 76, 80, 14, 177, 177, 188, + 13, 76, 13, 177, 177, 177, 177, 177, 177, 177, + 177, 177, 177, 97, 97, 174, 174, 92, 14, 188, + 188, 28, 131, 50, 131, 131, 50, 39, 50, 179, + 179, 50, 50, 50, 131, 179, 179, 179, 179, 179, + 179, 179, 179, 179, 179, 9, 9, 9, 7, 37, + 14, 9, 7, 9, 153, 9, 9, 131, 131, 131, + 131, 93, 93, 93, 7, 175, 175, 7, 9, 9, + 9, 9, 16, 16, 16, 16, 9, 184, 184, 9, + 9, 162, 162, 131, 46, 16, 46, 162, 166, 162, + 162, 162, 162, 162, 162, 162, 162, 5, 5, 160, + 20, 160, 24, 24, 9, 24, 24, 160, 16, 182, + 182, 182, 2, 2, 14, 85, 85, 85, 110, 130, + 99, 114, 31, 9, 5, 5, 5, 5, 5, 5, + 16, 16, 131, 157, 118, 149, 82, 82, 131, 131, + 131, 82, 96, 82, 41, 82, 82, 82, 118, 82, + 138, -1, 82, 133, 118, 118, 82, 20, 20, -1, + 20, 118, 118, 118, 118, 17, 20, -1, 17, 17, + -1, -1, -1, 20, -1, -1, -1, -1, 8, 8, + 17, -1, -1, -1, -1, 20, 20, 20, 17, 8, + 17, 17, -1, -1, 8, 8, 17, 8, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, + -1, -1, -1, -1, -1, -1, -1, 24, 24, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 107, 107, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5, 5 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5, 5 ); protected array $gotoBase = array( - 0, 0, -163, 0, 0, 473, 187, 504, 247, 8, - 0, 0, -11, 117, 5, -187, 79, 61, 152, -101, - 107, 0, 78, 2, 207, 10, 162, 180, 174, 141, - 0, 122, 0, 0, 0, 86, 0, 182, 0, 171, - 0, 119, -1, 206, 0, 212, -216, 0, -552, -9, - 213, 0, 0, 0, 0, 0, 222, 0, 0, 268, - 0, 0, 282, 0, 74, 346, 1, 0, 0, 0, - 0, 0, 0, -5, 0, 0, 13, 0, 0, -70, - 146, -28, 7, 41, -478, -51, -441, 0, 0, -88, - 0, 0, 181, 248, 0, 0, 118, -314, 0, 130, - 0, 0, 0, 267, 284, 0, 0, 398, 140, 0, - 158, 0, 0, 100, 133, 76, 0, 112, 304, 38, - 139, 65, 0, 0, 0, 0, 0, 0, 161, 0, - 168, 167, 0, 123, 0, 0, 0, 0, -182, 0, - 0, 0, 0, 0, 0, 0, 120, 0, 0, 125, - 0, 0, 0, 173, 136, 90, -93, 109, 0, 0, - 18, 0, -224, 0, 0, 0, 143, 0, 0, 0, - 0, 0, 0, 0, -64, 164, 172, 202, 223, 250, - 0, 0, 110, 0, 176, 227, 0, 265, -138, 0, + 0, 0, -203, 0, 0, 506, 185, 451, 580, 10, + 0, 0, 6, 71, 8, -187, 20, 101, 54, -101, + 110, 0, -103, 2, 250, 194, 159, 164, 92, 96, + 0, 85, 0, 0, 0, -44, 0, 118, 0, 116, + 0, 103, -1, 155, 0, 182, -256, 0, -558, -15, + 421, 0, 0, 0, 0, 0, 150, 0, 0, 187, + 0, 0, 243, 0, 69, 258, 1, 0, 0, 0, + 0, 0, 0, -5, 0, 0, 12, 0, 0, -99, + 95, -353, 44, -70, -276, 35, -441, 0, 0, -94, + 0, 0, 100, 168, 0, 0, 99, -325, 0, 115, + 0, 0, 0, 261, 259, 0, 0, -7, 94, 0, + 153, 0, 0, 68, 107, 60, 0, 67, 280, 32, + 70, 87, 0, 0, 0, 0, 0, 0, 23, 0, + 148, 169, 0, 111, 0, 0, 0, 0, -194, 0, + 0, 0, 0, 0, 0, 0, 88, 0, 0, 91, + 0, 0, 0, 109, 228, 74, -9, 93, 0, 0, + 3, 0, 256, 0, 0, 0, 124, 0, 0, 0, + 0, 0, 0, 0, 106, 156, 140, 172, 184, 204, + 0, 0, 220, 0, 108, 200, 0, 207, 86, 0, 0 ); protected array $gotoDefault = array( -32768, 524, 757, 4, 758, 953, 833, 842, 588, 542, - 718, 348, 637, 431, 1343, 929, 1159, 607, 861, 1286, - 1292, 467, 864, 328, 744, 941, 912, 913, 407, 394, + 718, 348, 637, 431, 1344, 929, 1160, 607, 861, 1287, + 1293, 467, 864, 328, 744, 941, 912, 913, 407, 394, 877, 405, 661, 638, 505, 897, 463, 889, 497, 892, 462, 901, 162, 427, 521, 905, 3, 908, 570, 939, - 992, 395, 916, 396, 689, 918, 591, 920, 921, 402, - 408, 409, 1164, 599, 634, 933, 254, 593, 934, 393, - 935, 943, 398, 400, 699, 477, 516, 510, 420, 1125, + 993, 395, 916, 396, 689, 918, 591, 920, 921, 402, + 408, 409, 1165, 599, 634, 933, 254, 593, 934, 393, + 935, 943, 398, 400, 699, 477, 516, 510, 420, 1126, 594, 621, 658, 456, 484, 632, 644, 631, 491, 443, - 426, 327, 976, 984, 498, 475, 998, 350, 1006, 752, - 1172, 652, 500, 1014, 653, 1021, 1024, 543, 544, 489, - 1036, 264, 1039, 501, 1048, 23, 679, 1053, 1054, 680, - 654, 1076, 655, 681, 656, 1078, 474, 589, 1086, 464, - 1094, 1332, 465, 1098, 262, 1101, 278, 354, 377, 444, - 1108, 1109, 9, 1115, 709, 710, 19, 273, 520, 1143, - 700, 1149, 272, 1152, 461, 1171, 460, 1241, 1243, 571, - 502, 1261, 311, 1264, 692, 517, 1269, 457, 1334, 458, - 545, 485, 335, 546, 1377, 306, 357, 332, 562, 312, - 358, 547, 486, 1340, 1348, 329, 31, 1367, 1378, 604, + 426, 327, 977, 985, 498, 475, 999, 350, 1007, 752, + 1173, 652, 500, 1015, 653, 1022, 1025, 543, 544, 489, + 1037, 264, 1040, 501, 1049, 23, 679, 1054, 1055, 680, + 654, 1077, 655, 681, 656, 1079, 474, 589, 1087, 464, + 1095, 1333, 465, 1099, 262, 1102, 278, 354, 377, 444, + 1109, 1110, 9, 1116, 709, 710, 19, 273, 520, 1144, + 700, 1150, 272, 1153, 461, 1172, 460, 1242, 1244, 571, + 502, 1262, 313, 1265, 692, 517, 1270, 457, 1335, 458, + 545, 485, 335, 546, 1378, 306, 357, 332, 562, 314, + 358, 547, 486, 1341, 1349, 329, 31, 1368, 1379, 604, 626 ); @@ -1074,27 +1082,27 @@ class Php8 extends \PhpParser\ParserAbstract 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 25, 25, 50, 69, 69, 72, 72, 71, 70, 70, 63, 75, 75, 76, 76, 77, 77, - 78, 78, 79, 79, 80, 80, 80, 26, 26, 27, - 27, 27, 27, 27, 88, 88, 90, 90, 83, 83, - 91, 91, 92, 92, 92, 84, 84, 87, 87, 85, - 85, 93, 94, 94, 57, 57, 65, 65, 68, 68, - 68, 67, 95, 95, 96, 58, 58, 58, 58, 97, - 97, 98, 98, 99, 99, 100, 101, 101, 102, 102, - 103, 103, 55, 55, 51, 51, 105, 53, 53, 106, - 52, 52, 54, 54, 64, 64, 64, 64, 81, 81, - 109, 109, 111, 111, 112, 112, 112, 112, 112, 112, - 112, 110, 110, 110, 115, 115, 115, 115, 89, 89, - 118, 118, 118, 119, 119, 116, 116, 120, 120, 122, - 122, 123, 123, 117, 124, 124, 121, 125, 125, 125, - 125, 113, 113, 82, 82, 82, 20, 20, 20, 127, - 126, 126, 128, 128, 128, 128, 60, 129, 129, 130, - 61, 132, 132, 133, 133, 134, 134, 86, 135, 135, - 135, 135, 135, 135, 135, 135, 141, 141, 142, 142, - 143, 143, 143, 143, 143, 144, 145, 145, 140, 140, - 136, 136, 139, 139, 147, 147, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 137, 148, 148, 150, - 149, 149, 138, 138, 114, 114, 151, 151, 153, 153, - 153, 152, 152, 62, 104, 154, 154, 56, 56, 42, + 78, 78, 79, 79, 80, 80, 80, 80, 26, 26, + 27, 27, 27, 27, 27, 88, 88, 90, 90, 83, + 83, 91, 91, 92, 92, 92, 84, 84, 87, 87, + 85, 85, 93, 94, 94, 57, 57, 65, 65, 68, + 68, 68, 67, 95, 95, 96, 58, 58, 58, 58, + 97, 97, 98, 98, 99, 99, 100, 101, 101, 102, + 102, 103, 103, 55, 55, 51, 51, 105, 53, 53, + 106, 52, 52, 54, 54, 64, 64, 64, 64, 81, + 81, 109, 109, 111, 111, 112, 112, 112, 112, 112, + 112, 112, 110, 110, 110, 115, 115, 115, 115, 89, + 89, 118, 118, 118, 119, 119, 116, 116, 120, 120, + 122, 122, 123, 123, 117, 124, 124, 121, 125, 125, + 125, 125, 113, 113, 82, 82, 82, 20, 20, 20, + 127, 126, 126, 128, 128, 128, 128, 60, 129, 129, + 130, 61, 132, 132, 133, 133, 134, 134, 86, 135, + 135, 135, 135, 135, 135, 135, 135, 141, 141, 142, + 142, 143, 143, 143, 143, 143, 144, 145, 145, 140, + 140, 136, 136, 139, 139, 147, 147, 146, 146, 146, + 146, 146, 146, 146, 146, 146, 146, 137, 148, 148, + 150, 149, 149, 138, 138, 114, 114, 151, 151, 153, + 153, 153, 152, 152, 62, 104, 154, 154, 56, 56, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, @@ -1104,20 +1112,20 @@ class Php8 extends \PhpParser\ParserAbstract 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 42, 42, 161, 162, 162, 163, 155, 155, 160, - 160, 164, 165, 165, 166, 167, 168, 168, 168, 168, - 19, 19, 73, 73, 73, 73, 156, 156, 156, 156, - 170, 170, 159, 159, 159, 157, 157, 176, 176, 176, - 176, 176, 176, 176, 176, 176, 176, 177, 177, 177, - 108, 179, 179, 179, 179, 158, 158, 158, 158, 158, - 158, 158, 158, 59, 59, 173, 173, 173, 173, 173, - 180, 180, 169, 169, 169, 169, 181, 181, 181, 181, - 181, 74, 74, 66, 66, 66, 66, 131, 131, 131, - 131, 184, 183, 172, 172, 172, 172, 172, 172, 171, - 171, 171, 182, 182, 182, 182, 107, 178, 186, 186, - 185, 185, 187, 187, 187, 187, 187, 187, 187, 187, - 175, 175, 175, 175, 174, 189, 188, 188, 188, 188, - 188, 188, 188, 188, 190, 190, 190, 190 + 42, 42, 42, 42, 161, 162, 162, 163, 155, 155, + 160, 160, 164, 165, 165, 166, 167, 168, 168, 168, + 168, 19, 19, 73, 73, 73, 73, 156, 156, 156, + 156, 170, 170, 159, 159, 159, 157, 157, 176, 176, + 176, 176, 176, 176, 176, 176, 176, 176, 177, 177, + 177, 108, 179, 179, 179, 179, 158, 158, 158, 158, + 158, 158, 158, 158, 59, 59, 173, 173, 173, 173, + 173, 180, 180, 169, 169, 169, 169, 181, 181, 181, + 181, 181, 74, 74, 66, 66, 66, 66, 131, 131, + 131, 131, 184, 183, 172, 172, 172, 172, 172, 172, + 171, 171, 171, 182, 182, 182, 182, 107, 178, 186, + 186, 185, 185, 187, 187, 187, 187, 187, 187, 187, + 187, 175, 175, 175, 175, 174, 189, 188, 188, 188, + 188, 188, 188, 188, 188, 190, 190, 190, 190 ); protected array $ruleToLength = array( @@ -1141,50 +1149,50 @@ class Php8 extends \PhpParser\ParserAbstract 3, 3, 1, 2, 5, 7, 9, 6, 5, 6, 3, 2, 1, 1, 1, 1, 0, 2, 1, 3, 8, 0, 4, 2, 1, 3, 0, 1, 0, 1, - 0, 1, 3, 1, 1, 1, 1, 8, 9, 7, - 8, 7, 6, 8, 0, 2, 0, 2, 1, 2, - 1, 2, 1, 1, 1, 0, 2, 0, 2, 0, - 2, 2, 1, 3, 1, 4, 1, 4, 1, 1, - 4, 2, 1, 3, 3, 3, 4, 4, 5, 0, - 2, 4, 3, 1, 1, 7, 0, 2, 1, 3, - 3, 4, 1, 4, 0, 2, 5, 0, 2, 6, - 0, 2, 0, 3, 1, 2, 1, 1, 2, 0, - 1, 3, 0, 2, 1, 1, 1, 1, 1, 1, - 1, 7, 9, 6, 1, 2, 1, 1, 1, 1, - 1, 1, 1, 1, 3, 3, 3, 1, 3, 3, - 3, 3, 3, 1, 3, 3, 1, 1, 2, 1, - 1, 0, 1, 0, 2, 2, 2, 4, 3, 1, - 1, 3, 1, 2, 2, 3, 2, 3, 1, 1, - 2, 3, 1, 1, 3, 2, 0, 1, 5, 7, - 5, 6, 10, 3, 5, 1, 1, 3, 0, 2, - 4, 5, 4, 4, 4, 3, 1, 1, 1, 1, - 1, 1, 0, 1, 1, 2, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 2, 1, 3, 1, - 1, 3, 0, 2, 0, 3, 5, 8, 1, 3, - 3, 0, 2, 2, 2, 3, 1, 0, 1, 1, - 3, 3, 3, 4, 4, 1, 1, 2, 3, 3, + 0, 1, 3, 1, 1, 1, 1, 1, 8, 9, + 7, 8, 7, 6, 8, 0, 2, 0, 2, 1, + 2, 1, 2, 1, 1, 1, 0, 2, 0, 2, + 0, 2, 2, 1, 3, 1, 4, 1, 4, 1, + 1, 4, 2, 1, 3, 3, 3, 4, 4, 5, + 0, 2, 4, 3, 1, 1, 7, 0, 2, 1, + 3, 3, 4, 1, 4, 0, 2, 5, 0, 2, + 6, 0, 2, 0, 3, 1, 2, 1, 1, 2, + 0, 1, 3, 0, 2, 1, 1, 1, 1, 1, + 1, 1, 7, 9, 6, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 3, 3, 3, 1, 3, + 3, 3, 3, 3, 1, 3, 3, 1, 1, 2, + 1, 1, 0, 1, 0, 2, 2, 2, 4, 3, + 1, 1, 3, 1, 2, 2, 3, 2, 3, 1, + 1, 2, 3, 1, 1, 3, 2, 0, 1, 5, + 7, 5, 6, 10, 3, 5, 1, 1, 3, 0, + 2, 4, 5, 4, 4, 4, 3, 1, 1, 1, + 1, 1, 1, 0, 1, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 2, 1, 3, + 1, 1, 3, 0, 2, 0, 3, 5, 8, 1, + 3, 3, 0, 2, 2, 2, 3, 1, 0, 1, + 1, 3, 3, 3, 4, 4, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 2, 2, 2, 2, 3, 3, 3, 3, 3, + 3, 3, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 2, 2, 2, 2, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 5, 4, - 3, 4, 4, 2, 2, 4, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 1, 3, 2, - 1, 2, 4, 2, 2, 8, 9, 8, 9, 9, - 10, 9, 10, 8, 3, 2, 2, 1, 1, 0, - 4, 2, 1, 3, 2, 1, 2, 2, 2, 4, - 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, - 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 3, 5, 3, - 3, 4, 1, 1, 3, 1, 1, 1, 1, 1, - 3, 2, 3, 0, 1, 1, 3, 1, 1, 1, - 1, 1, 1, 3, 1, 1, 1, 4, 1, 4, - 4, 0, 1, 1, 1, 3, 3, 1, 4, 2, - 2, 1, 3, 1, 4, 3, 3, 3, 3, 1, - 3, 1, 1, 3, 1, 1, 4, 1, 1, 1, - 3, 1, 1, 2, 1, 3, 4, 3, 2, 0, - 2, 2, 1, 2, 1, 1, 1, 4, 3, 3, - 3, 3, 6, 3, 1, 1, 2, 1 + 3, 3, 3, 3, 2, 2, 2, 2, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, + 4, 3, 4, 4, 2, 2, 4, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, + 2, 1, 2, 4, 2, 2, 8, 9, 8, 9, + 9, 10, 9, 10, 8, 3, 2, 2, 1, 1, + 0, 4, 2, 1, 3, 2, 1, 2, 2, 2, + 4, 1, 1, 1, 1, 1, 1, 1, 1, 3, + 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 3, 5, + 3, 3, 4, 1, 1, 3, 1, 1, 1, 1, + 1, 3, 2, 3, 0, 1, 1, 3, 1, 1, + 1, 1, 1, 1, 3, 1, 1, 1, 4, 1, + 4, 4, 0, 1, 1, 1, 3, 3, 1, 4, + 2, 2, 1, 3, 1, 4, 3, 3, 3, 3, + 1, 3, 1, 1, 3, 1, 1, 4, 1, 1, + 1, 3, 1, 1, 2, 1, 3, 4, 3, 2, + 0, 2, 2, 1, 2, 1, 1, 1, 4, 3, + 3, 3, 3, 6, 3, 1, 1, 2, 1 ); protected function initReduceCallbacks(): void { @@ -1625,884 +1633,884 @@ protected function initReduceCallbacks(): void { $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 207 => static function ($self, $stackPos) { - $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(8-3)], ['byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-5)], 'returnType' => $self->semStack[$stackPos-(8-7)], 'stmts' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Node\Identifier($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 208 => static function ($self, $stackPos) { - $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(9-4)], ['byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-6)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(8-3)], ['byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-5)], 'returnType' => $self->semStack[$stackPos-(8-7)], 'stmts' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); }, 209 => static function ($self, $stackPos) { + $self->semValue = new Stmt\Function_($self->semStack[$stackPos-(9-4)], ['byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-6)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); + }, + 210 => static function ($self, $stackPos) { $self->semValue = new Stmt\Class_($self->semStack[$stackPos-(7-2)], ['type' => $self->semStack[$stackPos-(7-1)], 'extends' => $self->semStack[$stackPos-(7-3)], 'implements' => $self->semStack[$stackPos-(7-4)], 'stmts' => $self->semStack[$stackPos-(7-6)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos])); $self->checkClass($self->semValue, $stackPos-(7-2)); }, - 210 => static function ($self, $stackPos) { + 211 => static function ($self, $stackPos) { $self->semValue = new Stmt\Class_($self->semStack[$stackPos-(8-3)], ['type' => $self->semStack[$stackPos-(8-2)], 'extends' => $self->semStack[$stackPos-(8-4)], 'implements' => $self->semStack[$stackPos-(8-5)], 'stmts' => $self->semStack[$stackPos-(8-7)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); $self->checkClass($self->semValue, $stackPos-(8-3)); }, - 211 => static function ($self, $stackPos) { + 212 => static function ($self, $stackPos) { $self->semValue = new Stmt\Interface_($self->semStack[$stackPos-(7-3)], ['extends' => $self->semStack[$stackPos-(7-4)], 'stmts' => $self->semStack[$stackPos-(7-6)], 'attrGroups' => $self->semStack[$stackPos-(7-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos])); $self->checkInterface($self->semValue, $stackPos-(7-3)); }, - 212 => static function ($self, $stackPos) { + 213 => static function ($self, $stackPos) { $self->semValue = new Stmt\Trait_($self->semStack[$stackPos-(6-3)], ['stmts' => $self->semStack[$stackPos-(6-5)], 'attrGroups' => $self->semStack[$stackPos-(6-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); }, - 213 => static function ($self, $stackPos) { + 214 => static function ($self, $stackPos) { $self->semValue = new Stmt\Enum_($self->semStack[$stackPos-(8-3)], ['scalarType' => $self->semStack[$stackPos-(8-4)], 'implements' => $self->semStack[$stackPos-(8-5)], 'stmts' => $self->semStack[$stackPos-(8-7)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); $self->checkEnum($self->semValue, $stackPos-(8-3)); }, - 214 => static function ($self, $stackPos) { + 215 => static function ($self, $stackPos) { $self->semValue = null; }, - 215 => static function ($self, $stackPos) { + 216 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 216 => static function ($self, $stackPos) { + 217 => static function ($self, $stackPos) { $self->semValue = null; }, - 217 => static function ($self, $stackPos) { + 218 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 218 => static function ($self, $stackPos) { + 219 => static function ($self, $stackPos) { $self->semValue = 0; }, - 219 => null, 220 => null, - 221 => static function ($self, $stackPos) { + 221 => null, + 222 => static function ($self, $stackPos) { $self->checkClassModifier($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 222 => static function ($self, $stackPos) { + 223 => static function ($self, $stackPos) { $self->semValue = Modifiers::ABSTRACT; }, - 223 => static function ($self, $stackPos) { + 224 => static function ($self, $stackPos) { $self->semValue = Modifiers::FINAL; }, - 224 => static function ($self, $stackPos) { + 225 => static function ($self, $stackPos) { $self->semValue = Modifiers::READONLY; }, - 225 => static function ($self, $stackPos) { + 226 => static function ($self, $stackPos) { $self->semValue = null; }, - 226 => static function ($self, $stackPos) { + 227 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 227 => static function ($self, $stackPos) { + 228 => static function ($self, $stackPos) { $self->semValue = array(); }, - 228 => static function ($self, $stackPos) { + 229 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 229 => static function ($self, $stackPos) { + 230 => static function ($self, $stackPos) { $self->semValue = array(); }, - 230 => static function ($self, $stackPos) { + 231 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 231 => null, - 232 => static function ($self, $stackPos) { + 232 => null, + 233 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 233 => static function ($self, $stackPos) { + 234 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 234 => null, - 235 => static function ($self, $stackPos) { + 235 => null, + 236 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 236 => null, - 237 => static function ($self, $stackPos) { + 237 => null, + 238 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 238 => static function ($self, $stackPos) { + 239 => static function ($self, $stackPos) { if ($self->semStack[$stackPos-(1-1)] instanceof Stmt\Block) { $self->semValue = $self->semStack[$stackPos-(1-1)]->stmts; } else if ($self->semStack[$stackPos-(1-1)] === null) { $self->semValue = []; } else { $self->semValue = [$self->semStack[$stackPos-(1-1)]]; }; }, - 239 => static function ($self, $stackPos) { + 240 => static function ($self, $stackPos) { $self->semValue = null; }, - 240 => static function ($self, $stackPos) { + 241 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 241 => null, - 242 => static function ($self, $stackPos) { + 242 => null, + 243 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 243 => static function ($self, $stackPos) { + 244 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 244 => static function ($self, $stackPos) { + 245 => static function ($self, $stackPos) { $self->semValue = new Node\DeclareItem($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 245 => static function ($self, $stackPos) { + 246 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 246 => static function ($self, $stackPos) { + 247 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-3)]; }, - 247 => static function ($self, $stackPos) { + 248 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 248 => static function ($self, $stackPos) { + 249 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(5-3)]; }, - 249 => static function ($self, $stackPos) { + 250 => static function ($self, $stackPos) { $self->semValue = array(); }, - 250 => static function ($self, $stackPos) { + 251 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 251 => static function ($self, $stackPos) { + 252 => static function ($self, $stackPos) { $self->semValue = new Stmt\Case_($self->semStack[$stackPos-(4-2)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 252 => static function ($self, $stackPos) { + 253 => static function ($self, $stackPos) { $self->semValue = new Stmt\Case_(null, $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 253 => null, 254 => null, - 255 => static function ($self, $stackPos) { + 255 => null, + 256 => static function ($self, $stackPos) { $self->semValue = new Expr\Match_($self->semStack[$stackPos-(7-3)], $self->semStack[$stackPos-(7-6)], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos])); }, - 256 => static function ($self, $stackPos) { + 257 => static function ($self, $stackPos) { $self->semValue = []; }, - 257 => null, - 258 => static function ($self, $stackPos) { + 258 => null, + 259 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 259 => static function ($self, $stackPos) { + 260 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 260 => static function ($self, $stackPos) { + 261 => static function ($self, $stackPos) { $self->semValue = new Node\MatchArm($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 261 => static function ($self, $stackPos) { + 262 => static function ($self, $stackPos) { $self->semValue = new Node\MatchArm(null, $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 262 => static function ($self, $stackPos) { + 263 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(1-1)]; }, - 263 => static function ($self, $stackPos) { + 264 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 264 => static function ($self, $stackPos) { + 265 => static function ($self, $stackPos) { $self->semValue = array(); }, - 265 => static function ($self, $stackPos) { + 266 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 266 => static function ($self, $stackPos) { + 267 => static function ($self, $stackPos) { $self->semValue = new Stmt\ElseIf_($self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, - 267 => static function ($self, $stackPos) { + 268 => static function ($self, $stackPos) { $self->semValue = array(); }, - 268 => static function ($self, $stackPos) { + 269 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 269 => static function ($self, $stackPos) { + 270 => static function ($self, $stackPos) { $self->semValue = new Stmt\ElseIf_($self->semStack[$stackPos-(6-3)], $self->semStack[$stackPos-(6-6)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); $self->fixupAlternativeElse($self->semValue); }, - 270 => static function ($self, $stackPos) { + 271 => static function ($self, $stackPos) { $self->semValue = null; }, - 271 => static function ($self, $stackPos) { + 272 => static function ($self, $stackPos) { $self->semValue = new Stmt\Else_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 272 => static function ($self, $stackPos) { + 273 => static function ($self, $stackPos) { $self->semValue = null; }, - 273 => static function ($self, $stackPos) { + 274 => static function ($self, $stackPos) { $self->semValue = new Stmt\Else_($self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); $self->fixupAlternativeElse($self->semValue); }, - 274 => static function ($self, $stackPos) { + 275 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)], false); }, - 275 => static function ($self, $stackPos) { + 276 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(2-2)], true); }, - 276 => static function ($self, $stackPos) { + 277 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)], false); }, - 277 => static function ($self, $stackPos) { + 278 => static function ($self, $stackPos) { $self->semValue = array($self->fixupArrayDestructuring($self->semStack[$stackPos-(1-1)]), false); }, - 278 => null, - 279 => static function ($self, $stackPos) { + 279 => null, + 280 => static function ($self, $stackPos) { $self->semValue = array(); }, - 280 => static function ($self, $stackPos) { + 281 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 281 => static function ($self, $stackPos) { + 282 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 282 => static function ($self, $stackPos) { + 283 => static function ($self, $stackPos) { $self->semValue = 0; }, - 283 => static function ($self, $stackPos) { + 284 => static function ($self, $stackPos) { $self->checkModifier($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 284 => static function ($self, $stackPos) { + 285 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC; }, - 285 => static function ($self, $stackPos) { + 286 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED; }, - 286 => static function ($self, $stackPos) { + 287 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE; }, - 287 => static function ($self, $stackPos) { + 288 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC_SET; }, - 288 => static function ($self, $stackPos) { + 289 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED_SET; }, - 289 => static function ($self, $stackPos) { + 290 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE_SET; }, - 290 => static function ($self, $stackPos) { + 291 => static function ($self, $stackPos) { $self->semValue = Modifiers::READONLY; }, - 291 => static function ($self, $stackPos) { + 292 => static function ($self, $stackPos) { $self->semValue = new Node\Param($self->semStack[$stackPos-(7-6)], null, $self->semStack[$stackPos-(7-3)], $self->semStack[$stackPos-(7-4)], $self->semStack[$stackPos-(7-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(7-2)], $self->semStack[$stackPos-(7-1)], $self->semStack[$stackPos-(7-7)]); $self->checkParam($self->semValue); $self->addPropertyNameToHooks($self->semValue); }, - 292 => static function ($self, $stackPos) { + 293 => static function ($self, $stackPos) { $self->semValue = new Node\Param($self->semStack[$stackPos-(9-6)], $self->semStack[$stackPos-(9-8)], $self->semStack[$stackPos-(9-3)], $self->semStack[$stackPos-(9-4)], $self->semStack[$stackPos-(9-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(9-2)], $self->semStack[$stackPos-(9-1)], $self->semStack[$stackPos-(9-9)]); $self->checkParam($self->semValue); $self->addPropertyNameToHooks($self->semValue); }, - 293 => static function ($self, $stackPos) { + 294 => static function ($self, $stackPos) { $self->semValue = new Node\Param(new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])), null, $self->semStack[$stackPos-(6-3)], $self->semStack[$stackPos-(6-4)], $self->semStack[$stackPos-(6-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(6-2)], $self->semStack[$stackPos-(6-1)]); }, - 294 => null, - 295 => static function ($self, $stackPos) { + 295 => null, + 296 => static function ($self, $stackPos) { $self->semValue = new Node\NullableType($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 296 => static function ($self, $stackPos) { + 297 => static function ($self, $stackPos) { $self->semValue = new Node\UnionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 297 => null, 298 => null, - 299 => static function ($self, $stackPos) { + 299 => null, + 300 => static function ($self, $stackPos) { $self->semValue = new Node\Name('static', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 300 => static function ($self, $stackPos) { + 301 => static function ($self, $stackPos) { $self->semValue = $self->handleBuiltinTypes($self->semStack[$stackPos-(1-1)]); }, - 301 => static function ($self, $stackPos) { + 302 => static function ($self, $stackPos) { $self->semValue = new Node\Identifier('array', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 302 => static function ($self, $stackPos) { + 303 => static function ($self, $stackPos) { $self->semValue = new Node\Identifier('callable', $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 303 => null, - 304 => static function ($self, $stackPos) { + 304 => null, + 305 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 305 => static function ($self, $stackPos) { + 306 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 306 => static function ($self, $stackPos) { + 307 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 307 => null, - 308 => static function ($self, $stackPos) { + 308 => null, + 309 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 309 => static function ($self, $stackPos) { + 310 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 310 => static function ($self, $stackPos) { + 311 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 311 => static function ($self, $stackPos) { + 312 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 312 => static function ($self, $stackPos) { + 313 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 313 => static function ($self, $stackPos) { + 314 => static function ($self, $stackPos) { $self->semValue = new Node\IntersectionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 314 => static function ($self, $stackPos) { + 315 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 315 => static function ($self, $stackPos) { + 316 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 316 => static function ($self, $stackPos) { + 317 => static function ($self, $stackPos) { $self->semValue = new Node\IntersectionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 317 => null, - 318 => static function ($self, $stackPos) { + 318 => null, + 319 => static function ($self, $stackPos) { $self->semValue = new Node\NullableType($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 319 => static function ($self, $stackPos) { + 320 => static function ($self, $stackPos) { $self->semValue = new Node\UnionType($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 320 => null, - 321 => static function ($self, $stackPos) { + 321 => null, + 322 => static function ($self, $stackPos) { $self->semValue = null; }, - 322 => null, - 323 => static function ($self, $stackPos) { + 323 => null, + 324 => static function ($self, $stackPos) { $self->semValue = null; }, - 324 => static function ($self, $stackPos) { + 325 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(2-2)]; }, - 325 => static function ($self, $stackPos) { + 326 => static function ($self, $stackPos) { $self->semValue = null; }, - 326 => static function ($self, $stackPos) { + 327 => static function ($self, $stackPos) { $self->semValue = array(); }, - 327 => static function ($self, $stackPos) { + 328 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-2)]; }, - 328 => static function ($self, $stackPos) { + 329 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-2)]); }, - 329 => static function ($self, $stackPos) { + 330 => static function ($self, $stackPos) { $self->semValue = new Node\VariadicPlaceholder($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 330 => static function ($self, $stackPos) { + 331 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 331 => static function ($self, $stackPos) { + 332 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 332 => static function ($self, $stackPos) { + 333 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(1-1)], false, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 333 => static function ($self, $stackPos) { + 334 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(2-2)], true, false, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 334 => static function ($self, $stackPos) { + 335 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(2-2)], false, true, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 335 => static function ($self, $stackPos) { + 336 => static function ($self, $stackPos) { $self->semValue = new Node\Arg($self->semStack[$stackPos-(3-3)], false, false, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(3-1)]); }, - 336 => null, - 337 => static function ($self, $stackPos) { + 337 => null, + 338 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 338 => static function ($self, $stackPos) { + 339 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 339 => null, 340 => null, - 341 => static function ($self, $stackPos) { + 341 => null, + 342 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 342 => static function ($self, $stackPos) { + 343 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 343 => static function ($self, $stackPos) { + 344 => static function ($self, $stackPos) { $self->semValue = new Node\StaticVar($self->semStack[$stackPos-(1-1)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 344 => static function ($self, $stackPos) { + 345 => static function ($self, $stackPos) { $self->semValue = new Node\StaticVar($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 345 => static function ($self, $stackPos) { + 346 => static function ($self, $stackPos) { if ($self->semStack[$stackPos-(2-2)] !== null) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; } else { $self->semValue = $self->semStack[$stackPos-(2-1)]; } }, - 346 => static function ($self, $stackPos) { + 347 => static function ($self, $stackPos) { $self->semValue = array(); }, - 347 => static function ($self, $stackPos) { + 348 => static function ($self, $stackPos) { $nop = $self->maybeCreateZeroLengthNop($self->tokenPos);; if ($nop !== null) { $self->semStack[$stackPos-(1-1)][] = $nop; } $self->semValue = $self->semStack[$stackPos-(1-1)]; }, - 348 => static function ($self, $stackPos) { + 349 => static function ($self, $stackPos) { $self->semValue = new Stmt\Property($self->semStack[$stackPos-(5-2)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-1)]); }, - 349 => static function ($self, $stackPos) { + 350 => static function ($self, $stackPos) { $self->semValue = new Stmt\Property($self->semStack[$stackPos-(7-2)], $self->semStack[$stackPos-(7-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(7-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(7-3)], $self->semStack[$stackPos-(7-1)], $self->semStack[$stackPos-(7-6)]); $self->checkPropertyHooksForMultiProperty($self->semValue, $stackPos-(7-5)); $self->checkEmptyPropertyHookList($self->semStack[$stackPos-(7-6)], $stackPos-(7-5)); $self->addPropertyNameToHooks($self->semValue); }, - 350 => static function ($self, $stackPos) { + 351 => static function ($self, $stackPos) { $self->semValue = new Stmt\ClassConst($self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(5-1)]); $self->checkClassConst($self->semValue, $stackPos-(5-2)); }, - 351 => static function ($self, $stackPos) { + 352 => static function ($self, $stackPos) { $self->semValue = new Stmt\ClassConst($self->semStack[$stackPos-(6-5)], $self->semStack[$stackPos-(6-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos]), $self->semStack[$stackPos-(6-1)], $self->semStack[$stackPos-(6-4)]); $self->checkClassConst($self->semValue, $stackPos-(6-2)); }, - 352 => static function ($self, $stackPos) { + 353 => static function ($self, $stackPos) { $self->semValue = new Stmt\ClassMethod($self->semStack[$stackPos-(10-5)], ['type' => $self->semStack[$stackPos-(10-2)], 'byRef' => $self->semStack[$stackPos-(10-4)], 'params' => $self->semStack[$stackPos-(10-7)], 'returnType' => $self->semStack[$stackPos-(10-9)], 'stmts' => $self->semStack[$stackPos-(10-10)], 'attrGroups' => $self->semStack[$stackPos-(10-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(10-1)], $self->tokenEndStack[$stackPos])); $self->checkClassMethod($self->semValue, $stackPos-(10-2)); }, - 353 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUse($self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); - }, 354 => static function ($self, $stackPos) { - $self->semValue = new Stmt\EnumCase($self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUse($self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 355 => static function ($self, $stackPos) { - $self->semValue = null; /* will be skipped */ + $self->semValue = new Stmt\EnumCase($self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, 356 => static function ($self, $stackPos) { - $self->semValue = array(); + $self->semValue = null; /* will be skipped */ }, 357 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = array(); }, 358 => static function ($self, $stackPos) { - $self->semValue = array(); + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 359 => static function ($self, $stackPos) { - $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; + $self->semValue = array(); }, 360 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Precedence($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, 361 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(5-1)][0], $self->semStack[$stackPos-(5-1)][1], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUseAdaptation\Precedence($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 362 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(5-1)][0], $self->semStack[$stackPos-(5-1)][1], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, 363 => static function ($self, $stackPos) { - $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], null, $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], $self->semStack[$stackPos-(4-3)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 364 => static function ($self, $stackPos) { $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], null, $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 365 => static function ($self, $stackPos) { + $self->semValue = new Stmt\TraitUseAdaptation\Alias($self->semStack[$stackPos-(4-1)][0], $self->semStack[$stackPos-(4-1)][1], null, $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + }, + 366 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)]); }, - 366 => null, - 367 => static function ($self, $stackPos) { + 367 => null, + 368 => static function ($self, $stackPos) { $self->semValue = array(null, $self->semStack[$stackPos-(1-1)]); }, - 368 => static function ($self, $stackPos) { + 369 => static function ($self, $stackPos) { $self->semValue = null; }, - 369 => null, 370 => null, - 371 => static function ($self, $stackPos) { + 371 => null, + 372 => static function ($self, $stackPos) { $self->semValue = 0; }, - 372 => static function ($self, $stackPos) { + 373 => static function ($self, $stackPos) { $self->semValue = 0; }, - 373 => null, 374 => null, - 375 => static function ($self, $stackPos) { + 375 => null, + 376 => static function ($self, $stackPos) { $self->checkModifier($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 376 => static function ($self, $stackPos) { + 377 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC; }, - 377 => static function ($self, $stackPos) { + 378 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED; }, - 378 => static function ($self, $stackPos) { + 379 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE; }, - 379 => static function ($self, $stackPos) { + 380 => static function ($self, $stackPos) { $self->semValue = Modifiers::PUBLIC_SET; }, - 380 => static function ($self, $stackPos) { + 381 => static function ($self, $stackPos) { $self->semValue = Modifiers::PROTECTED_SET; }, - 381 => static function ($self, $stackPos) { + 382 => static function ($self, $stackPos) { $self->semValue = Modifiers::PRIVATE_SET; }, - 382 => static function ($self, $stackPos) { + 383 => static function ($self, $stackPos) { $self->semValue = Modifiers::STATIC; }, - 383 => static function ($self, $stackPos) { + 384 => static function ($self, $stackPos) { $self->semValue = Modifiers::ABSTRACT; }, - 384 => static function ($self, $stackPos) { + 385 => static function ($self, $stackPos) { $self->semValue = Modifiers::FINAL; }, - 385 => static function ($self, $stackPos) { + 386 => static function ($self, $stackPos) { $self->semValue = Modifiers::READONLY; }, - 386 => null, - 387 => static function ($self, $stackPos) { + 387 => null, + 388 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 388 => static function ($self, $stackPos) { + 389 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 389 => static function ($self, $stackPos) { + 390 => static function ($self, $stackPos) { $self->semValue = new Node\VarLikeIdentifier(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 390 => static function ($self, $stackPos) { + 391 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyItem($self->semStack[$stackPos-(1-1)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 391 => static function ($self, $stackPos) { + 392 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyItem($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 392 => static function ($self, $stackPos) { + 393 => static function ($self, $stackPos) { $self->semValue = []; }, - 393 => static function ($self, $stackPos) { + 394 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, - 394 => static function ($self, $stackPos) { + 395 => static function ($self, $stackPos) { $self->semValue = []; }, - 395 => static function ($self, $stackPos) { + 396 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; $self->checkEmptyPropertyHookList($self->semStack[$stackPos-(3-2)], $stackPos-(3-1)); }, - 396 => static function ($self, $stackPos) { + 397 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyHook($self->semStack[$stackPos-(5-4)], $self->semStack[$stackPos-(5-5)], ['flags' => $self->semStack[$stackPos-(5-2)], 'byRef' => $self->semStack[$stackPos-(5-3)], 'params' => [], 'attrGroups' => $self->semStack[$stackPos-(5-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); $self->checkPropertyHook($self->semValue, null); }, - 397 => static function ($self, $stackPos) { + 398 => static function ($self, $stackPos) { $self->semValue = new Node\PropertyHook($self->semStack[$stackPos-(8-4)], $self->semStack[$stackPos-(8-8)], ['flags' => $self->semStack[$stackPos-(8-2)], 'byRef' => $self->semStack[$stackPos-(8-3)], 'params' => $self->semStack[$stackPos-(8-6)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); $self->checkPropertyHook($self->semValue, $stackPos-(8-5)); }, - 398 => static function ($self, $stackPos) { - $self->semValue = null; - }, 399 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = null; }, 400 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 401 => static function ($self, $stackPos) { - $self->semValue = 0; + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 402 => static function ($self, $stackPos) { + $self->semValue = 0; + }, + 403 => static function ($self, $stackPos) { $self->checkPropertyHookModifiers($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $self->semValue = $self->semStack[$stackPos-(2-1)] | $self->semStack[$stackPos-(2-2)]; }, - 403 => null, 404 => null, - 405 => static function ($self, $stackPos) { + 405 => null, + 406 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 406 => static function ($self, $stackPos) { + 407 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 407 => static function ($self, $stackPos) { + 408 => static function ($self, $stackPos) { $self->semValue = array(); }, - 408 => null, 409 => null, - 410 => static function ($self, $stackPos) { + 410 => null, + 411 => static function ($self, $stackPos) { $self->semValue = new Expr\Assign($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 411 => static function ($self, $stackPos) { + 412 => static function ($self, $stackPos) { $self->semValue = new Expr\Assign($self->fixupArrayDestructuring($self->semStack[$stackPos-(3-1)]), $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 412 => static function ($self, $stackPos) { + 413 => static function ($self, $stackPos) { $self->semValue = new Expr\Assign($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 413 => static function ($self, $stackPos) { + 414 => static function ($self, $stackPos) { $self->semValue = new Expr\AssignRef($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 414 => static function ($self, $stackPos) { + 415 => static function ($self, $stackPos) { $self->semValue = new Expr\AssignRef($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); if (!$self->phpVersion->allowsAssignNewByReference()) { $self->emitError(new Error('Cannot assign new by reference', $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]))); } }, - 415 => null, 416 => null, - 417 => static function ($self, $stackPos) { - $self->semValue = new Expr\Clone_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); - }, + 417 => null, 418 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Clone_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 419 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 420 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 421 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 422 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 423 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 424 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 425 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 426 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 427 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 428 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 429 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 430 => static function ($self, $stackPos) { - $self->semValue = new Expr\AssignOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 431 => static function ($self, $stackPos) { - $self->semValue = new Expr\PostInc($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\AssignOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 432 => static function ($self, $stackPos) { - $self->semValue = new Expr\PreInc($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PostInc($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 433 => static function ($self, $stackPos) { - $self->semValue = new Expr\PostDec($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PreInc($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 434 => static function ($self, $stackPos) { - $self->semValue = new Expr\PreDec($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PostDec($self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 435 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BooleanOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PreDec($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 436 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BooleanAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BooleanOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 437 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\LogicalOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BooleanAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 438 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\LogicalAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\LogicalOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 439 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\LogicalXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\LogicalAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 440 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\LogicalXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 441 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BitwiseOr($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 442 => static function ($self, $stackPos) { $self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 443 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BitwiseAnd($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 444 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\BitwiseXor($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 445 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Concat($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 446 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Plus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 447 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Minus($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 448 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Mul($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 449 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Div($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 450 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Mod($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 451 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\ShiftLeft($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 452 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\ShiftRight($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 453 => static function ($self, $stackPos) { - $self->semValue = new Expr\UnaryPlus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Pow($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 454 => static function ($self, $stackPos) { - $self->semValue = new Expr\UnaryMinus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\UnaryPlus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 455 => static function ($self, $stackPos) { - $self->semValue = new Expr\BooleanNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\UnaryMinus($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 456 => static function ($self, $stackPos) { - $self->semValue = new Expr\BitwiseNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BooleanNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 457 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Identical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BitwiseNot($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 458 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\NotIdentical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Identical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 459 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Equal($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\NotIdentical($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 460 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\NotEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Equal($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 461 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Spaceship($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\NotEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 462 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Smaller($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Spaceship($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 463 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\SmallerOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Smaller($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 464 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Greater($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\SmallerOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 465 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\GreaterOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Greater($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 466 => static function ($self, $stackPos) { - $self->semValue = new Expr\Instanceof_($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\GreaterOrEqual($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 467 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = new Expr\Instanceof_($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 468 => static function ($self, $stackPos) { - $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(5-1)], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 469 => static function ($self, $stackPos) { - $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(4-1)], null, $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(5-1)], $self->semStack[$stackPos-(5-3)], $self->semStack[$stackPos-(5-5)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, 470 => static function ($self, $stackPos) { - $self->semValue = new Expr\BinaryOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Ternary($self->semStack[$stackPos-(4-1)], null, $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 471 => static function ($self, $stackPos) { - $self->semValue = new Expr\Isset_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\BinaryOp\Coalesce($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 472 => static function ($self, $stackPos) { - $self->semValue = new Expr\Empty_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Isset_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 473 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Empty_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 474 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 475 => static function ($self, $stackPos) { - $self->semValue = new Expr\Eval_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 476 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Eval_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 477 => static function ($self, $stackPos) { - $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 478 => static function ($self, $stackPos) { - $self->semValue = new Expr\Cast\Int_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Include_($self->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 479 => static function ($self, $stackPos) { + $self->semValue = new Expr\Cast\Int_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + }, + 480 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = $self->getFloatCastKind($self->semStack[$stackPos-(2-1)]); $self->semValue = new Expr\Cast\Double($self->semStack[$stackPos-(2-2)], $attrs); }, - 480 => static function ($self, $stackPos) { + 481 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\String_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 481 => static function ($self, $stackPos) { + 482 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Array_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 482 => static function ($self, $stackPos) { + 483 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Object_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 483 => static function ($self, $stackPos) { + 484 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Bool_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 484 => static function ($self, $stackPos) { + 485 => static function ($self, $stackPos) { $self->semValue = new Expr\Cast\Unset_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 485 => static function ($self, $stackPos) { + 486 => static function ($self, $stackPos) { $self->semValue = $self->createExitExpr($self->semStack[$stackPos-(2-1)], $stackPos-(2-1), $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 486 => static function ($self, $stackPos) { + 487 => static function ($self, $stackPos) { $self->semValue = new Expr\ErrorSuppress($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 487 => null, - 488 => static function ($self, $stackPos) { + 488 => null, + 489 => static function ($self, $stackPos) { $self->semValue = new Expr\ShellExec($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 489 => static function ($self, $stackPos) { + 490 => static function ($self, $stackPos) { $self->semValue = new Expr\Print_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 490 => static function ($self, $stackPos) { + 491 => static function ($self, $stackPos) { $self->semValue = new Expr\Yield_(null, null, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 491 => static function ($self, $stackPos) { + 492 => static function ($self, $stackPos) { $self->semValue = new Expr\Yield_($self->semStack[$stackPos-(2-2)], null, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 492 => static function ($self, $stackPos) { + 493 => static function ($self, $stackPos) { $self->semValue = new Expr\Yield_($self->semStack[$stackPos-(4-4)], $self->semStack[$stackPos-(4-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 493 => static function ($self, $stackPos) { + 494 => static function ($self, $stackPos) { $self->semValue = new Expr\YieldFrom($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 494 => static function ($self, $stackPos) { + 495 => static function ($self, $stackPos) { $self->semValue = new Expr\Throw_($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 495 => static function ($self, $stackPos) { + 496 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => false, 'byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-4)], 'returnType' => $self->semStack[$stackPos-(8-6)], 'expr' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); }, - 496 => static function ($self, $stackPos) { + 497 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => true, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'returnType' => $self->semStack[$stackPos-(9-7)], 'expr' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 497 => static function ($self, $stackPos) { + 498 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => false, 'byRef' => $self->semStack[$stackPos-(8-2)], 'params' => $self->semStack[$stackPos-(8-4)], 'uses' => $self->semStack[$stackPos-(8-6)], 'returnType' => $self->semStack[$stackPos-(8-7)], 'stmts' => $self->semStack[$stackPos-(8-8)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])); }, - 498 => static function ($self, $stackPos) { + 499 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => true, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'uses' => $self->semStack[$stackPos-(9-7)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => []], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 499 => static function ($self, $stackPos) { + 500 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => false, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'returnType' => $self->semStack[$stackPos-(9-7)], 'expr' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 500 => static function ($self, $stackPos) { + 501 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrowFunction(['static' => true, 'byRef' => $self->semStack[$stackPos-(10-4)], 'params' => $self->semStack[$stackPos-(10-6)], 'returnType' => $self->semStack[$stackPos-(10-8)], 'expr' => $self->semStack[$stackPos-(10-10)], 'attrGroups' => $self->semStack[$stackPos-(10-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(10-1)], $self->tokenEndStack[$stackPos])); }, - 501 => static function ($self, $stackPos) { + 502 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => false, 'byRef' => $self->semStack[$stackPos-(9-3)], 'params' => $self->semStack[$stackPos-(9-5)], 'uses' => $self->semStack[$stackPos-(9-7)], 'returnType' => $self->semStack[$stackPos-(9-8)], 'stmts' => $self->semStack[$stackPos-(9-9)], 'attrGroups' => $self->semStack[$stackPos-(9-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(9-1)], $self->tokenEndStack[$stackPos])); }, - 502 => static function ($self, $stackPos) { + 503 => static function ($self, $stackPos) { $self->semValue = new Expr\Closure(['static' => true, 'byRef' => $self->semStack[$stackPos-(10-4)], 'params' => $self->semStack[$stackPos-(10-6)], 'uses' => $self->semStack[$stackPos-(10-8)], 'returnType' => $self->semStack[$stackPos-(10-9)], 'stmts' => $self->semStack[$stackPos-(10-10)], 'attrGroups' => $self->semStack[$stackPos-(10-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(10-1)], $self->tokenEndStack[$stackPos])); }, - 503 => static function ($self, $stackPos) { + 504 => static function ($self, $stackPos) { $self->semValue = array(new Stmt\Class_(null, ['type' => $self->semStack[$stackPos-(8-2)], 'extends' => $self->semStack[$stackPos-(8-4)], 'implements' => $self->semStack[$stackPos-(8-5)], 'stmts' => $self->semStack[$stackPos-(8-7)], 'attrGroups' => $self->semStack[$stackPos-(8-1)]], $self->getAttributes($self->tokenStartStack[$stackPos-(8-1)], $self->tokenEndStack[$stackPos])), $self->semStack[$stackPos-(8-3)]); $self->checkClass($self->semValue[0], -1); }, - 504 => static function ($self, $stackPos) { + 505 => static function ($self, $stackPos) { $self->semValue = new Expr\New_($self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 505 => static function ($self, $stackPos) { + 506 => static function ($self, $stackPos) { list($class, $ctorArgs) = $self->semStack[$stackPos-(2-2)]; $self->semValue = new Expr\New_($class, $ctorArgs, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 506 => static function ($self, $stackPos) { + 507 => static function ($self, $stackPos) { $self->semValue = new Expr\New_($self->semStack[$stackPos-(2-2)], [], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 507 => null, 508 => null, - 509 => static function ($self, $stackPos) { + 509 => null, + 510 => static function ($self, $stackPos) { $self->semValue = array(); }, - 510 => static function ($self, $stackPos) { + 511 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(4-3)]; }, - 511 => null, - 512 => static function ($self, $stackPos) { - $self->semValue = array($self->semStack[$stackPos-(1-1)]); - }, + 512 => null, 513 => static function ($self, $stackPos) { - $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; + $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, 514 => static function ($self, $stackPos) { - $self->semValue = new Node\ClosureUse($self->semStack[$stackPos-(2-2)], $self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, 515 => static function ($self, $stackPos) { - $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Node\ClosureUse($self->semStack[$stackPos-(2-2)], $self->semStack[$stackPos-(2-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 516 => static function ($self, $stackPos) { - $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 517 => static function ($self, $stackPos) { $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); @@ -2511,304 +2519,307 @@ protected function initReduceCallbacks(): void { $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 519 => static function ($self, $stackPos) { - $self->semValue = new Expr\StaticCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\FuncCall($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, 520 => static function ($self, $stackPos) { - $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\StaticCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 521 => null, - 522 => static function ($self, $stackPos) { + 521 => static function ($self, $stackPos) { $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, + 522 => null, 523 => static function ($self, $stackPos) { $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 524 => static function ($self, $stackPos) { - $self->semValue = new Name\FullyQualified(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Name($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 525 => static function ($self, $stackPos) { + $self->semValue = new Name\FullyQualified(substr($self->semStack[$stackPos-(1-1)], 1), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + }, + 526 => static function ($self, $stackPos) { $self->semValue = new Name\Relative(substr($self->semStack[$stackPos-(1-1)], 10), $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 526 => null, 527 => null, - 528 => static function ($self, $stackPos) { + 528 => null, + 529 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 529 => static function ($self, $stackPos) { + 530 => static function ($self, $stackPos) { $self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 530 => null, 531 => null, - 532 => static function ($self, $stackPos) { + 532 => null, + 533 => static function ($self, $stackPos) { $self->semValue = array(); }, - 533 => static function ($self, $stackPos) { + 534 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); foreach ($self->semValue as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', $self->phpVersion->supportsUnicodeEscapes()); } }; }, - 534 => static function ($self, $stackPos) { + 535 => static function ($self, $stackPos) { foreach ($self->semStack[$stackPos-(1-1)] as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', $self->phpVersion->supportsUnicodeEscapes()); } }; $self->semValue = $self->semStack[$stackPos-(1-1)]; }, - 535 => static function ($self, $stackPos) { + 536 => static function ($self, $stackPos) { $self->semValue = array(); }, - 536 => null, - 537 => static function ($self, $stackPos) { + 537 => null, + 538 => static function ($self, $stackPos) { $self->semValue = new Expr\ConstFetch($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 538 => static function ($self, $stackPos) { + 539 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Line($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 539 => static function ($self, $stackPos) { + 540 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\File($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 540 => static function ($self, $stackPos) { + 541 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Dir($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 541 => static function ($self, $stackPos) { + 542 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Class_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 542 => static function ($self, $stackPos) { + 543 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Trait_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 543 => static function ($self, $stackPos) { + 544 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Method($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 544 => static function ($self, $stackPos) { + 545 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Function_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 545 => static function ($self, $stackPos) { + 546 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Namespace_($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 546 => static function ($self, $stackPos) { + 547 => static function ($self, $stackPos) { $self->semValue = new Scalar\MagicConst\Property($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 547 => static function ($self, $stackPos) { + 548 => static function ($self, $stackPos) { $self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 548 => static function ($self, $stackPos) { + 549 => static function ($self, $stackPos) { $self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos-(5-1)], $self->semStack[$stackPos-(5-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(5-1)], $self->tokenEndStack[$stackPos])); }, - 549 => static function ($self, $stackPos) { + 550 => static function ($self, $stackPos) { $self->semValue = new Expr\ClassConstFetch($self->semStack[$stackPos-(3-1)], new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(3-3)], $self->tokenEndStack[$stackPos-(3-3)])), $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 550 => static function ($self, $stackPos) { + 551 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_SHORT; $self->semValue = new Expr\Array_($self->semStack[$stackPos-(3-2)], $attrs); }, - 551 => static function ($self, $stackPos) { + 552 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_LONG; $self->semValue = new Expr\Array_($self->semStack[$stackPos-(4-3)], $attrs); $self->createdArrays->attach($self->semValue); }, - 552 => static function ($self, $stackPos) { + 553 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(1-1)]; $self->createdArrays->attach($self->semValue); }, - 553 => static function ($self, $stackPos) { + 554 => static function ($self, $stackPos) { $self->semValue = Scalar\String_::fromString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]), $self->phpVersion->supportsUnicodeEscapes()); }, - 554 => static function ($self, $stackPos) { + 555 => static function ($self, $stackPos) { $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]); $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED; foreach ($self->semStack[$stackPos-(3-2)] as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '"', $self->phpVersion->supportsUnicodeEscapes()); } }; $self->semValue = new Scalar\InterpolatedString($self->semStack[$stackPos-(3-2)], $attrs); }, - 555 => static function ($self, $stackPos) { + 556 => static function ($self, $stackPos) { $self->semValue = $self->parseLNumber($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]), $self->phpVersion->allowsInvalidOctals()); }, - 556 => static function ($self, $stackPos) { + 557 => static function ($self, $stackPos) { $self->semValue = Scalar\Float_::fromString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 557 => null, 558 => null, 559 => null, - 560 => static function ($self, $stackPos) { + 560 => null, + 561 => static function ($self, $stackPos) { $self->semValue = $self->parseDocString($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos-(3-3)], $self->tokenEndStack[$stackPos-(3-3)]), true); }, - 561 => static function ($self, $stackPos) { + 562 => static function ($self, $stackPos) { $self->semValue = $self->parseDocString($self->semStack[$stackPos-(2-1)], '', $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos-(2-2)], $self->tokenEndStack[$stackPos-(2-2)]), true); }, - 562 => static function ($self, $stackPos) { + 563 => static function ($self, $stackPos) { $self->semValue = $self->parseDocString($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-2)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos]), $self->getAttributes($self->tokenStartStack[$stackPos-(3-3)], $self->tokenEndStack[$stackPos-(3-3)]), true); }, - 563 => static function ($self, $stackPos) { + 564 => static function ($self, $stackPos) { $self->semValue = null; }, - 564 => null, 565 => null, - 566 => static function ($self, $stackPos) { + 566 => null, + 567 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 567 => null, 568 => null, 569 => null, 570 => null, 571 => null, 572 => null, - 573 => static function ($self, $stackPos) { + 573 => null, + 574 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 574 => null, 575 => null, 576 => null, - 577 => static function ($self, $stackPos) { + 577 => null, + 578 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 578 => null, - 579 => static function ($self, $stackPos) { + 579 => null, + 580 => static function ($self, $stackPos) { $self->semValue = new Expr\MethodCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 580 => static function ($self, $stackPos) { + 581 => static function ($self, $stackPos) { $self->semValue = new Expr\NullsafeMethodCall($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->semStack[$stackPos-(4-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 581 => static function ($self, $stackPos) { + 582 => static function ($self, $stackPos) { $self->semValue = null; }, - 582 => null, 583 => null, 584 => null, - 585 => static function ($self, $stackPos) { + 585 => null, + 586 => static function ($self, $stackPos) { $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 586 => static function ($self, $stackPos) { + 587 => static function ($self, $stackPos) { $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 587 => null, - 588 => static function ($self, $stackPos) { + 588 => null, + 589 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 589 => static function ($self, $stackPos) { + 590 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable($self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 590 => static function ($self, $stackPos) { + 591 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable(new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])), $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 591 => static function ($self, $stackPos) { + 592 => static function ($self, $stackPos) { $var = $self->semStack[$stackPos-(1-1)]->name; $self->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])) : $var; }, - 592 => static function ($self, $stackPos) { + 593 => static function ($self, $stackPos) { $self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 593 => null, - 594 => static function ($self, $stackPos) { + 594 => null, + 595 => static function ($self, $stackPos) { $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 595 => static function ($self, $stackPos) { + 596 => static function ($self, $stackPos) { $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 596 => static function ($self, $stackPos) { + 597 => static function ($self, $stackPos) { $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 597 => static function ($self, $stackPos) { + 598 => static function ($self, $stackPos) { $self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 598 => static function ($self, $stackPos) { + 599 => static function ($self, $stackPos) { $self->semValue = new Expr\StaticPropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 599 => null, - 600 => static function ($self, $stackPos) { + 600 => null, + 601 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 601 => null, 602 => null, - 603 => static function ($self, $stackPos) { + 603 => null, + 604 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(3-2)]; }, - 604 => null, - 605 => static function ($self, $stackPos) { + 605 => null, + 606 => static function ($self, $stackPos) { $self->semValue = new Expr\Error($self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); $self->errorState = 2; }, - 606 => static function ($self, $stackPos) { + 607 => static function ($self, $stackPos) { $self->semValue = new Expr\List_($self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); $self->semValue->setAttribute('kind', Expr\List_::KIND_LIST); $self->postprocessList($self->semValue); }, - 607 => static function ($self, $stackPos) { + 608 => static function ($self, $stackPos) { $self->semValue = $self->semStack[$stackPos-(1-1)]; $end = count($self->semValue)-1; if ($self->semValue[$end]->value instanceof Expr\Error) array_pop($self->semValue); }, - 608 => null, - 609 => static function ($self, $stackPos) { + 609 => null, + 610 => static function ($self, $stackPos) { /* do nothing -- prevent default action of $$=$self->semStack[$1]. See $551. */ }, - 610 => static function ($self, $stackPos) { + 611 => static function ($self, $stackPos) { $self->semStack[$stackPos-(3-1)][] = $self->semStack[$stackPos-(3-3)]; $self->semValue = $self->semStack[$stackPos-(3-1)]; }, - 611 => static function ($self, $stackPos) { + 612 => static function ($self, $stackPos) { $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, - 612 => static function ($self, $stackPos) { + 613 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(1-1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 613 => static function ($self, $stackPos) { + 614 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(2-2)], null, true, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 614 => static function ($self, $stackPos) { + 615 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(1-1)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, - 615 => static function ($self, $stackPos) { + 616 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(3-3)], $self->semStack[$stackPos-(3-1)], false, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 616 => static function ($self, $stackPos) { + 617 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(4-4)], $self->semStack[$stackPos-(4-1)], true, $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, - 617 => static function ($self, $stackPos) { + 618 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(3-3)], $self->semStack[$stackPos-(3-1)], false, $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, - 618 => static function ($self, $stackPos) { + 619 => static function ($self, $stackPos) { $self->semValue = new Node\ArrayItem($self->semStack[$stackPos-(2-2)], null, false, $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos]), true); }, - 619 => static function ($self, $stackPos) { + 620 => static function ($self, $stackPos) { /* Create an Error node now to remember the position. We'll later either report an error, or convert this into a null element, depending on whether this is a creation or destructuring context. */ $attrs = $self->createEmptyElemAttributes($self->tokenPos); $self->semValue = new Node\ArrayItem(new Expr\Error($attrs), null, false, $attrs); }, - 620 => static function ($self, $stackPos) { - $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; - }, 621 => static function ($self, $stackPos) { $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, 622 => static function ($self, $stackPos) { - $self->semValue = array($self->semStack[$stackPos-(1-1)]); + $self->semStack[$stackPos-(2-1)][] = $self->semStack[$stackPos-(2-2)]; $self->semValue = $self->semStack[$stackPos-(2-1)]; }, 623 => static function ($self, $stackPos) { - $self->semValue = array($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)]); + $self->semValue = array($self->semStack[$stackPos-(1-1)]); }, 624 => static function ($self, $stackPos) { - $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]); $attrs['rawValue'] = $self->semStack[$stackPos-(1-1)]; $self->semValue = new Node\InterpolatedStringPart($self->semStack[$stackPos-(1-1)], $attrs); + $self->semValue = array($self->semStack[$stackPos-(2-1)], $self->semStack[$stackPos-(2-2)]); }, 625 => static function ($self, $stackPos) { - $self->semValue = new Expr\Variable($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $attrs = $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos]); $attrs['rawValue'] = $self->semStack[$stackPos-(1-1)]; $self->semValue = new Node\InterpolatedStringPart($self->semStack[$stackPos-(1-1)], $attrs); }, - 626 => null, - 627 => static function ($self, $stackPos) { - $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); + 626 => static function ($self, $stackPos) { + $self->semValue = new Expr\Variable($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, + 627 => null, 628 => static function ($self, $stackPos) { - $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(4-1)], $self->semStack[$stackPos-(4-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(4-1)], $self->tokenEndStack[$stackPos])); }, 629 => static function ($self, $stackPos) { - $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\PropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 630 => static function ($self, $stackPos) { - $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\NullsafePropertyFetch($self->semStack[$stackPos-(3-1)], $self->semStack[$stackPos-(3-3)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 631 => static function ($self, $stackPos) { $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 632 => static function ($self, $stackPos) { - $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(6-2)], $self->semStack[$stackPos-(6-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Expr\Variable($self->semStack[$stackPos-(3-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(3-1)], $self->tokenEndStack[$stackPos])); }, 633 => static function ($self, $stackPos) { - $self->semValue = $self->semStack[$stackPos-(3-2)]; + $self->semValue = new Expr\ArrayDimFetch($self->semStack[$stackPos-(6-2)], $self->semStack[$stackPos-(6-4)], $self->getAttributes($self->tokenStartStack[$stackPos-(6-1)], $self->tokenEndStack[$stackPos])); }, 634 => static function ($self, $stackPos) { - $self->semValue = new Scalar\String_($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = $self->semStack[$stackPos-(3-2)]; }, 635 => static function ($self, $stackPos) { - $self->semValue = $self->parseNumString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + $self->semValue = new Scalar\String_($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); }, 636 => static function ($self, $stackPos) { + $self->semValue = $self->parseNumString($self->semStack[$stackPos-(1-1)], $self->getAttributes($self->tokenStartStack[$stackPos-(1-1)], $self->tokenEndStack[$stackPos])); + }, + 637 => static function ($self, $stackPos) { $self->semValue = $self->parseNumString('-' . $self->semStack[$stackPos-(2-2)], $self->getAttributes($self->tokenStartStack[$stackPos-(2-1)], $self->tokenEndStack[$stackPos])); }, - 637 => null, + 638 => null, ]; } } diff --git a/test/code/parser/stmt/function/clone_function.test b/test/code/parser/stmt/function/clone_function.test new file mode 100644 index 0000000000..db13ff60ae --- /dev/null +++ b/test/code/parser/stmt/function/clone_function.test @@ -0,0 +1,58 @@ +Declaring clone function stub +----- +