From 8b1c9c0409a503e06f1170447a0ac4e20a4ea16f Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Sat, 7 Jul 2018 12:45:32 +0200 Subject: [PATCH] Store comment at end of class in Nop statement Fixed #509. --- CHANGELOG.md | 9 + grammar/php5.y | 10 +- grammar/php7.y | 10 +- lib/PhpParser/Parser/Php5.php | 2002 ++++++++++----------- lib/PhpParser/Parser/Php7.php | 1419 +++++++-------- test/code/parser/commentAtEndOfClass.test | 37 + test/code/parser/semiReserved.test | 5 + 7 files changed, 1776 insertions(+), 1716 deletions(-) create mode 100644 test/code/parser/commentAtEndOfClass.test diff --git a/CHANGELOG.md b/CHANGELOG.md index 26f79f7..55bbc10 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,16 @@ Version 4.0.3-dev ----------------- +### Fixed + +* Fixed possible undefined offset notice in formatting-preserving printer. (#513) + +### Added + * Improved error recovery inside arrays. +* Preserve trailing comment inside classes. **Note:** This change is possibly BC breaking if your + code validates that classes can only contain certain statement types. After this change, classes + can also contain Nop statements, while this was not previously possible. (#509) Version 4.0.2 (2018-06-03) -------------------------- diff --git a/grammar/php5.y b/grammar/php5.y index 379cd3c..486d836 100644 --- a/grammar/php5.y +++ b/grammar/php5.y @@ -454,11 +454,17 @@ static_var: | plain_variable '=' static_scalar { $$ = Stmt\StaticVar[$1, $3]; } ; -class_statement_list: - class_statement_list class_statement { push($1, $2); } +class_statement_list_ex: + class_statement_list_ex class_statement { if ($2 !== null) { push($1, $2); } } | /* empty */ { init(); } ; +class_statement_list: + class_statement_list_ex + { makeNop($nop, $this->lookaheadStartAttributes, $this->endAttributes); + if ($nop !== null) { $1[] = $nop; } $$ = $1; } +; + class_statement: variable_modifiers property_declaration_list ';' { $$ = Stmt\Property[$1, $2]; $this->checkProperty($$, #1); } diff --git a/grammar/php7.y b/grammar/php7.y index f134ef4..ba20328 100644 --- a/grammar/php7.y +++ b/grammar/php7.y @@ -522,11 +522,17 @@ static_var: | plain_variable '=' expr { $$ = Stmt\StaticVar[$1, $3]; } ; -class_statement_list: - class_statement_list class_statement { if ($2 !== null) { push($1, $2); } } +class_statement_list_ex: + class_statement_list_ex class_statement { if ($2 !== null) { push($1, $2); } } | /* empty */ { init(); } ; +class_statement_list: + class_statement_list_ex + { makeNop($nop, $this->lookaheadStartAttributes, $this->endAttributes); + if ($nop !== null) { $1[] = $nop; } $$ = $1; } +; + class_statement: variable_modifiers property_declaration_list ';' { $$ = Stmt\Property[$1, $2]; $this->checkProperty($$, #1); } diff --git a/lib/PhpParser/Parser/Php5.php b/lib/PhpParser/Parser/Php5.php index f16c811..b5ebb32 100644 --- a/lib/PhpParser/Parser/Php5.php +++ b/lib/PhpParser/Parser/Php5.php @@ -18,16 +18,16 @@ use PhpParser\Node\Stmt; class Php5 extends \PhpParser\ParserAbstract { protected $tokenToSymbolMapSize = 392; - protected $actionTableSize = 1075; - protected $gotoTableSize = 700; + protected $actionTableSize = 1072; + protected $gotoTableSize = 644; protected $invalidSymbol = 157; protected $errorSymbol = 1; protected $defaultAction = -32766; protected $unexpectedTokenRule = 32767; - protected $YY2TBLSTATE = 406; - protected $numNonLeafStates = 671; + protected $YY2TBLSTATE = 403; + protected $numNonLeafStates = 672; protected $symbolToName = array( "EOF", @@ -233,300 +233,300 @@ class Php5 extends \PhpParser\ParserAbstract ); protected $action = array( - 676, 677, 678, 679, 680,-32766, 681, 682, 683, 719, - 720, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 677, 678, 679, 680, 681, 279, 682, 683, 684, 720, + 721, 218, 219, 220, 221, 222, 223, 224, 225, 226, 0, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,-32766,-32766,-32766,-32766,-32766,-32766,-32766, - -32766,-32767,-32767,-32767,-32767, 421, 239, 240,-32766,-32766, - -32766,-32766, 684,-32766, 311,-32766,-32766,-32766,-32766,-32766, - -32766,-32767,-32767,-32767,-32767,-32767, 685, 686, 687, 688, - 689, 690, 691, 1180, 10, 751,-32766,-32766,-32766,-32766, - -32766, 424, 692, 693, 694, 695, 696, 697, 698, 699, - 700, 701, 702, 722, 723, 724, 725, 726, 714, 715, - 716, 717, 718, 703, 704, 705, 706, 707, 708, 709, - 745, 746, 747, 748, 749, 750, 710, 711, 712, 713, - 743, 734, 732, 733, 729, 730, 282, 721, 727, 728, - 735, 736, 738, 737, 739, 740, 54, 55, 425, 56, - 57, 731, 742, 741, 25, 58, 59, 339, 60,-32766, - -32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, 9,-32767, - -32767,-32767,-32767, 52, 327,-32766, 1044, 952, 953, 954, - 951, 950, 949, 944,-32766,-32766,-32766, 48, 770, 771, - 828, 61, 62, 125, -272, 206, 815, 63, 1180, 64, - 293, 294, 65, 66, 67, 68, 69, 70, 71, 72, - 420, 26, 301, 73, 417,-32766,-32766,-32766,-32766, 1095, - 1096, 755, 753, 758,-32766, 926, 876, 474,-32766,-32766, - -32766, 829, 410,-32766, 309,-32766, 1062,-32766,-32766,-32766, - -32766,-32766,-32766, 215, 216, 217, 437,-32766,-32766,-32766, - -32766,-32766,-32766,-32766,-32766, 122, 498, 952, 953, 954, - 951, 950, 949, 202, 482, 483, 284, 627, 127, 118, - 900, 901, 339, 484, 485, -219, 1101, 1102, 1103, 1104, - 1098, 1099, 312, 499, 353, 423, 433, 499, 1105, 1100, - 433, 525, -223,-32766,-32766, 41, 422, 335, 323, 907, - 324, 426, -125, -125, -125, -4, 829, 473, 101, 102, - 103, 817, 303, 1044, 40, 21, 427, -125, 475, -125, - 476, -125, 477, -125, 104, 428, 215, 216, 217, 31, - 32, 429, 430, 628, 33, 478, 433, 819, 74, 592, - 930, 351, 352, 479, 480, 877, 202, 243, 1107, 481, - 297, 769, 800, 847, 431, 432, 300, 236, 237, 238, + -32766,-32767,-32767,-32767,-32767, 206, 239, 240,-32766,-32766, + -32766,-32766, 685,-32766, 123,-32766,-32766,-32766,-32766,-32766, + -32766,-32767,-32767,-32767,-32767,-32767, 686, 687, 688, 689, + 690, 691, 692, 350, 30, 752, 954, 955, 956, 953, + 952, 951, 693, 694, 695, 696, 697, 698, 699, 700, + 701, 702, 703, 723, 724, 725, 726, 727, 715, 716, + 717, 718, 719, 704, 705, 706, 707, 708, 709, 710, + 746, 747, 748, 749, 750, 751, 711, 712, 713, 714, + 744, 735, 733, 734, 730, 731, 1046, 722, 728, 729, + 736, 737, 739, 738, 740, 741, 54, 55, 422, 56, + 57, 732, 743, 742, -219, 58, 59, 413, 60,-32766, + -32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, 1046,-32767, + -32767,-32767,-32767,-32767,-32767,-32767,-32767, 96, 97, 98, + 99, 100,-32766,-32766,-32766,-32766,-32766, 1224, 52, 829, + 1225, 61, 62,-32766,-32766,-32766, 294, 63, 590, 64, + 290, 291, 65, 66, 67, 68, 69, 70, 71, 72, + 1046, 26, 298, 73, 414,-32766,-32766,-32766, 877, 1097, + 1098, 756, 754, 759, 815, 771, 772, 471,-32766,-32766, + -32766, 830, 421, 294, 548,-32766, 1182,-32766,-32766,-32766, + -32766,-32766,-32766, 215, 216, 217, 434, 420,-32766, 306, + -32766,-32766,-32766,-32766,-32766, 1109, 495, 954, 955, 956, + 953, 952, 951, 202, 479, 480, 215, 216, 217, 407, + 122, 241, 813, 481, 482, 1046, 1103, 1104, 1105, 1106, + 1100, 1101, 309, 901, 902, 328, 202, 496, 1107, 1102, + 430,-32766, 215, 216, 217, 41, 496, 332, 320, 430, + 321, 423, -125, -125, -125, -4, 830, 470, 126, 417, + 336, 818, 202, 907, 40, 21, 424, -125, 472, -125, + 473, -125, 474, -125,-32766, 425, 215, 216, 217, 31, + 32, 426, 427, 10, 33, 475, 820, 878, 74, 216, + 217, 348, 349, 476, 477, 126, 202, 243, 418, 478, + 1046, 444, 801, 848, 428, 429, 281, 756, 202, 759, 35, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 239, 240, 1044, 426, 416, 831, 642, - -125, 829, 473, 215, 216, 217, 817, 1146, 241, 40, - 21, 427, 350, 475, 447, 476, 1107, 477, 297, 1044, - 428, 983, 985, 202, 31, 32, 429, 430, 408, 33, - 478, 1195, 1222, 74, 322, 1223, 351, 352, 479, 480, - -32766,-32766,-32766, 1044, 481, 814, 925, 762, 847, 431, - 432,-32767,-32767,-32767,-32767, 96, 97, 98, 99, 100, - -32766, 20,-32766,-32766,-32766,-32766, 1194, 123, 336, 810, - 484, 426, 36, 831, 642, -4, 829, 473, 900, 901, - 338, 817, 126, 1044, 40, 21, 427, 906, 475, 299, - 476, 499, 477, -501, 433, 428, -203, -203, -203, 31, - 32, 429, 430, 217, 33, 478, 285, 758, 74, 551, - 1213, 351, 352, 479, 480,-32766,-32766,-32766, 334, 481, - 51, 202, 800, 847, 431, 432, 1044, 755, 30, 758, - 126,-32766,-32766,-32766, 448,-32766, 331,-32766,-32766,-32766, - 49, 450, 753,-32766,-32766,-32766, 426, 1044, 831, 642, - -203,-32766, 473,-32766,-32766, 812, 817,-32766,-32766, 40, - 21, 427, 1072, 475, 121, 476, 202, 477, 29, 296, - 428, -204, -204, -204, 31, 32, 429, 430, 117, 33, - 478, 418, 1044, 74, 207, 829, 351, 352, 479, 480, - 215, 216, 217, 499, 481, 208, 433, 800, 847, 431, - 432, 438, 120, 335, 1044, 298, 78, 79, 80,-32766, - 202, 239, 240, 645, 128, 98, 99, 100, 335, 233, - 234, 235, 119, 831, 642, -204, 34, 295, 81, 82, + 114, 115, 116,-32766,-32766,-32766, 423, 1064, 832, 643, + -125, 830, 470, 215, 216, 217, 818, 1148, 927, 40, + 21, 424, 1074, 472, 628, 473,-32766, 474,-32766, 419, + 425, 985, 987, 202, 31, 32, 426, 427, 405, 33, + 475, 811, 1046, 74, 319, 1046, 348, 349, 476, 477, + -32766,-32766,-32766, 496, 478, 25, 430, 763, 848, 428, + 429, 435, 48, 332, 415, 295, 901, 902, 282, 1147, + -32766, 297,-32766,-32766,-32766,-32766, 1182, 347, 333, 496, + 770, 423, 430, 832, 643, -4, 830, 470, -223, 331, + 629, 818,-32766, 430, 40, 21, 424, 932, 472, 308, + 473, 445, 474, -502, 928, 425, -203, -203, -203, 31, + 32, 426, 427, 296, 33, 475, 809, 759, 74, 816, + 1215, 348, 349, 476, 477,-32766,-32766,-32766, 1046, 478, + 335, 1197, 801, 848, 428, 429, 236, 237, 238, 217, + 49,-32766,-32766,-32766, 118,-32766, 127,-32766,-32766,-32766, + 336, 292, 239, 240, 1046, 1196, 423, 202, 832, 643, + -203,-32766, 470,-32766,-32766, 481, 818, 208, 131, 40, + 21, 424, 581, 472, 20, 473, 36, 474, 29, 293, + 425, -204, -204, -204, 31, 32, 426, 427, 51, 33, + 475, 447, 121, 74, 202, 830, 348, 349, 476, 477, + 908,-32766,-32766,-32766, 478, 244, 522, 801, 848, 428, + 429, 101, 102, 103, 9, 300, 78, 79, 80, 246, + 324,-32766, 119, 646, 233, 234, 235, 104, 77, 946, + 130, 754, 332, 832, 643, -204, 34, 245, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 246, 303, 244, 829, 426, 216, 217, 215, 216, - 217, 473, 808, 499, 104, 817, 433, 131, 40, 21, - 427, 583, 475, 77, 476, 202, 477, 335, 202, 428, - 462, 598, 648, 31, 32, 429, 829, 443, 33, 478, - 644, 245, 74, 457, 22, 351, 352,-32766,-32766,-32766, - 132, 361, 209, 481, 770, 771, 605, 606, 941, 658, - 929, 670, 763, 647, 646, -82, 840,-32766, 303, 649, - 652, 130, 827, 315, 426, 104,-32766, 53, 46, 47, - 473, 301, 831, 642, 817, 44, 45, 40, 21, 427, - 129, 475, 43, 476, 50, 477, 611, 753, 428, 531, - 758, 755, 31, 32, 429, 829, 426, 33, 478, 756, - -32766, 74, 473, 957, 351, 352, 817, 586, 636, 40, - 21, 427, 481, 475, 446, 476, 615, 477, 849, 848, - 428, 326, 1106, 655, 31, 32, 429, 829, 623, 33, - 478, 330, 281, 74, 449, 11, 351, 352, -80, 589, - 12, 863, 642, 602, 481, 1145, 328, 467, 441, -219, - 0, 603, 411, 0, 0, 650, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 426, 0, -502, 0, 0, - 0, 473, 0, 831, 642, 817, 325, -501, 40, 21, - 427, 308, 475, 310, 476, 484, 477, 1152, 0, 428, - 0, 0, 0, 31, 32, 429, 829, 426, 33, 478, - 6, 360, 74, 473, -410, 351, 352, 817, -402, 5, - 40, 21, 427, 481, 475, 14, 476, -411, 477, 842, - 412, 428, 533, 443, 394, 31, 32, 429, 386, 385, - 33, 478, 374, 816, 74, 663, 662, 351, 352, 39, - 38, 767, 831, 642, 766, 481, 809, 811, 935, 813, - 825, 933, 768, 818, 934, 937, 936, 859, 861, 864, - 803, 871, 870, 879, 820, 805, 426, 826, 869, 407, - 333, 332, 473, 124, 831, 642, 817, 406, 77, 40, - 21, 427, 667, 475, 666, 476, 242, 477, 665, 660, - 428, 657, 656, 654, 31, 32, 429, 653, 651, 33, - 478, 643, 340, 74, 210, 211, 351, 352, 942, 834, - 212, 1047, 213, 843, 481, 772, 775, 774, 868, 1218, - 1188, 1186, 1171, 1184, 204, 1086, 918, 1192, 1182, 210, - 211, 773, 1095, 1096, 1058, 212,-32766, 213, 844, 845, - 1097, 1046, 836, 831, 642, 307, 1220, 764, 765, 204, - 1221, 1219, 801, 664, 461, 846, 0, 1095, 1096, 306, - 409,-32766, 305, 304, 24, 1097, 27, 292, 291, 283, - 415, 28, 37, 42, 75, 205, 76,-32766, 0, -220, - 1048, 1024, 1023, 1088, 576, 1111, 908, 572, 1052, 1101, - 1102, 1103, 1104, 1098, 1099, 384, 1049, 633, 566, 471, - 466, 1105, 1100, 465, 458, 379, 18, 17, 214, 286, - -32766, 16, 572, 609, 1101, 1102, 1103, 1104, 1098, 1099, - 384, 1042, -420, 0, 1166, 1165, 1105, 1100, 1112, 1216, - 1085, 1183, 1055, 214, 1170,-32766, 1185, 0, 1071, 1056, - 1057, 1054, 1053, 0, 1151 + 103, -254, 300, 1109, 830, 423, 98, 99, 100, 496, + 120, 470, 430, 1046, 104, 818,-32766,-32766, 40, 21, + 424, 117, 472, 828, 473, 440, 474, 207, 645, 425, + 125, 209, 647, 31, 32, 426, 830, 841, 33, 475, + -32766,-32766, 74, 128, 657, 348, 349, 332, 239, 240, + 459, 597, 654, 478, 312, 454, 22, 132, 358, 771, + 772, 604, 605, -82, 660, 300, 943, 663, 931, 671, + 764, 649,-32766, 104, 423, 756, 757, 53, 612, 959, + 470, 43, 832, 643, 818, 44, 45, 40, 21, 424, + 298, 472, -273, 473, 46, 474, 50, 47, 425, 129, + 759, 754, 31, 32, 426, 830, 423, 33, 475, 637, + 528, 74, 470,-32766, 348, 349, 818, 624, 850, 40, + 21, 424, 478, 472, 443, 473, 584, 474, 849, 616, + 425, -80, 1108, 655, 31, 32, 426, 830, 11, 33, + 475, 446, 278, 74, 438, 601, 348, 349, 587, 602, + 283, 832, 643, 464, 478, 325, 1154, 0, 0, 327, + 0, 0, 0, 0, 0, 651, 0, 0, 0, 322, + 0, 0, 0, 323, 0, 423, 0, 0, 307, 0, + 0, 470, 305, 832, 643, 818, -503, -502, 40, 21, + 424, 481, 472, 0, 473, -403, 474, 14, 5, 425, + 0, 0, 6, 31, 32, 426, 830, 423, 33, 475, + 357, -411, 74, 470, 12, 348, 349, 818, -412, 440, + 40, 21, 424, 478, 472, 382, 473, 409, 474, 408, + 383, 425, 391, 371, 530, 31, 32, 426, 843, 329, + 33, 475, 666, 810, 74, 39, 38, 348, 349, 880, + 821, 769, 832, 643, 819, 478, 937, 806, 667, 768, + 827, 936, 939, 812, 767, 814, 826, 872, 804, 938, + 865, 862, 817, 860, 935, 871, 423, 77, 644, 648, + 650, 652, 470, 653, 864, 643, 818, 656, 658, 40, + 21, 424, 659, 472, 661, 473, 242, 474, 662, 330, + 425, 403, 404, 124, 31, 32, 426, 845, 773, 33, + 475, 776, 775, 74, 210, 211, 348, 349, 870, 668, + 212, 802, 213, 1221, 478, 458, 1220, 1190, 1188, 1173, + 1186, 1088, 919, 1194, 204, 1184, 869, 944, 835, 210, + 211, 1049, 1097, 1098, 844, 212,-32766, 213, 1048, 837, + 1099, 1060, 774, 832, 643, 42, 1222, 846, 765, 204, + 847, 766, 1223, 1044, 37, 28, 412, 1097, 1098, 406, + 337,-32766, 75, 76, 304, 1099, 303, 302, 301, 27, + 24, 289, 288, 280,-32766, 205, 0, 1025, 573, 1026, + 1050, -220, 1090, -219, 16, 1113, 909, 569, 1054, 1103, + 1104, 1105, 1106, 1100, 1101, 381, 1051, 634, 563, 468, + 463, 1107, 1102, 462, 455, 376, 18, 17, 214, 0, + -32766, 608, 569, -421, 1103, 1104, 1105, 1106, 1100, 1101, + 381, 1168, 1167, 1114, 1218, 1087, 1107, 1102, 1185, 1057, + 1172, 1187, 1073, 214, 1058,-32766, 1059, 0, 1056, 1055, + 0, 1153 ); protected $actionCheck = array( - 2, 3, 4, 5, 6, 8, 8, 9, 10, 11, + 2, 3, 4, 5, 6, 13, 8, 9, 10, 11, 12, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 8, 9, 10, 31, 32, 33, 34, 35, 36, 37, 38, 39, 7, 66, 67, 31, 32, 33, 34, 54, 28, 7, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 68, 69, 70, 71, - 72, 73, 74, 79, 7, 77, 31, 32, 33, 34, - 35, 7, 84, 85, 86, 87, 88, 89, 90, 91, + 72, 73, 74, 7, 7, 77, 112, 113, 114, 115, + 116, 117, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 13, 129, 130, 131, + 122, 123, 124, 125, 126, 127, 12, 129, 130, 131, 132, 133, 134, 135, 136, 137, 2, 3, 4, 5, - 6, 143, 144, 145, 7, 11, 12, 153, 14, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 103, 41, - 42, 43, 44, 67, 109, 79, 12, 112, 113, 114, - 115, 116, 117, 118, 8, 9, 10, 67, 102, 103, - 1, 47, 48, 29, 79, 7, 148, 53, 79, 55, + 6, 143, 144, 145, 152, 11, 12, 7, 14, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 12, 41, + 42, 43, 44, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 31, 32, 33, 34, 35, 77, 67, 1, + 80, 47, 48, 8, 9, 10, 35, 53, 82, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 7, 67, 68, 69, 70, 8, 9, 10, 103, 75, - 76, 77, 77, 79, 109, 148, 29, 83, 8, 9, - 10, 1, 146, 118, 128, 28, 152, 30, 31, 32, - 33, 34, 35, 8, 9, 10, 102, 151, 28, 153, - 30, 31, 32, 33, 34, 149, 112, 112, 113, 114, - 115, 116, 117, 28, 120, 121, 7, 77, 149, 149, - 130, 131, 153, 129, 130, 152, 132, 133, 134, 135, - 136, 137, 138, 143, 7, 7, 146, 143, 144, 145, - 146, 82, 152, 8, 9, 151, 7, 153, 154, 152, - 156, 71, 72, 73, 74, 0, 1, 77, 50, 51, - 52, 81, 54, 12, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 66, 95, 8, 9, 10, 99, - 100, 101, 102, 143, 104, 105, 146, 148, 108, 82, - 150, 111, 112, 113, 114, 148, 28, 29, 139, 119, - 35, 148, 122, 123, 124, 125, 35, 50, 51, 52, + 12, 67, 68, 69, 70, 8, 9, 10, 29, 75, + 76, 77, 77, 79, 148, 102, 103, 83, 8, 9, + 10, 1, 7, 35, 78, 28, 79, 30, 31, 32, + 33, 34, 35, 8, 9, 10, 102, 7, 28, 128, + 30, 31, 32, 33, 34, 139, 112, 112, 113, 114, + 115, 116, 117, 28, 120, 121, 8, 9, 10, 146, + 149, 13, 148, 129, 130, 12, 132, 133, 134, 135, + 136, 137, 138, 130, 131, 7, 28, 143, 144, 145, + 146, 8, 8, 9, 10, 151, 143, 153, 154, 146, + 156, 71, 72, 73, 74, 0, 1, 77, 147, 7, + 153, 81, 28, 152, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 79, 95, 8, 9, 10, 99, + 100, 101, 102, 7, 104, 105, 148, 148, 108, 9, + 10, 111, 112, 113, 114, 147, 28, 29, 7, 119, + 12, 29, 122, 123, 124, 125, 7, 77, 28, 79, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 66, 67, 12, 71, 7, 148, 149, - 150, 1, 77, 8, 9, 10, 81, 152, 13, 84, - 85, 86, 7, 88, 29, 90, 139, 92, 35, 12, + 25, 26, 27, 31, 32, 33, 71, 152, 148, 149, + 150, 1, 77, 8, 9, 10, 81, 152, 148, 84, + 85, 86, 112, 88, 77, 90, 151, 92, 153, 7, 95, 56, 57, 28, 99, 100, 101, 102, 103, 104, - 105, 152, 77, 108, 109, 80, 111, 112, 113, 114, - 8, 9, 10, 12, 119, 148, 148, 122, 123, 124, - 125, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 28, 152, 30, 31, 32, 33, 1, 7, 143, 148, - 129, 71, 13, 148, 149, 150, 1, 77, 130, 131, - 67, 81, 147, 12, 84, 85, 86, 152, 88, 7, - 90, 143, 92, 128, 146, 95, 96, 97, 98, 99, - 100, 101, 102, 10, 104, 105, 35, 79, 108, 78, - 82, 111, 112, 113, 114, 8, 9, 10, 7, 119, - 67, 28, 122, 123, 124, 125, 12, 77, 7, 79, - 147, 8, 9, 10, 149, 28, 7, 30, 31, 32, - 67, 128, 77, 31, 32, 33, 71, 12, 148, 149, - 150, 28, 77, 30, 31, 148, 81, 31, 32, 84, - 85, 86, 112, 88, 13, 90, 28, 92, 140, 141, - 95, 96, 97, 98, 99, 100, 101, 102, 15, 104, - 105, 123, 12, 108, 15, 1, 111, 112, 113, 114, - 8, 9, 10, 143, 119, 15, 146, 122, 123, 124, - 125, 151, 149, 153, 12, 35, 8, 9, 10, 151, - 28, 66, 67, 29, 149, 47, 48, 49, 153, 47, - 48, 49, 149, 148, 149, 150, 28, 35, 30, 31, + 105, 148, 12, 108, 109, 12, 111, 112, 113, 114, + 8, 9, 10, 143, 119, 7, 146, 122, 123, 124, + 125, 151, 67, 153, 123, 35, 130, 131, 35, 155, + 28, 35, 30, 31, 32, 33, 79, 7, 143, 143, + 148, 71, 146, 148, 149, 150, 1, 77, 152, 7, + 143, 81, 151, 146, 84, 85, 86, 150, 88, 7, + 90, 149, 92, 128, 148, 95, 96, 97, 98, 99, + 100, 101, 102, 7, 104, 105, 148, 79, 108, 148, + 82, 111, 112, 113, 114, 8, 9, 10, 12, 119, + 67, 152, 122, 123, 124, 125, 50, 51, 52, 10, + 67, 8, 9, 10, 149, 28, 149, 30, 31, 32, + 153, 35, 66, 67, 12, 1, 71, 28, 148, 149, + 150, 28, 77, 30, 31, 129, 81, 15, 149, 84, + 85, 86, 153, 88, 152, 90, 13, 92, 140, 141, + 95, 96, 97, 98, 99, 100, 101, 102, 67, 104, + 105, 128, 13, 108, 28, 1, 111, 112, 113, 114, + 152, 8, 9, 10, 119, 15, 82, 122, 123, 124, + 125, 50, 51, 52, 103, 54, 8, 9, 10, 15, + 109, 28, 149, 29, 47, 48, 49, 66, 149, 118, + 29, 77, 153, 148, 149, 150, 28, 15, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 15, 54, 15, 1, 71, 9, 10, 8, 9, - 10, 77, 148, 143, 66, 81, 146, 149, 84, 85, - 86, 153, 88, 149, 90, 28, 92, 153, 28, 95, - 72, 73, 29, 99, 100, 101, 1, 146, 104, 105, - 149, 15, 108, 72, 73, 111, 112, 8, 9, 10, - 97, 98, 15, 119, 102, 103, 106, 107, 148, 149, - 148, 149, 148, 149, 29, 29, 35, 28, 54, 29, - 29, 29, 29, 29, 71, 66, 31, 67, 67, 67, - 77, 68, 148, 149, 81, 67, 67, 84, 85, 86, - 67, 88, 67, 90, 67, 92, 74, 77, 95, 82, - 79, 77, 99, 100, 101, 1, 71, 104, 105, 77, - 82, 108, 77, 79, 111, 112, 81, 87, 89, 84, - 85, 86, 119, 88, 86, 90, 93, 92, 123, 123, - 95, 127, 139, 29, 99, 100, 101, 1, 91, 104, - 105, 126, 94, 108, 94, 94, 111, 112, 94, 96, - 142, 148, 149, 96, 119, 155, 110, 102, 102, 152, - -1, 109, 146, -1, -1, 29, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 71, -1, 128, -1, -1, - -1, 77, -1, 148, 149, 81, 126, 128, 84, 85, - 86, 128, 88, 128, 90, 129, 92, 139, -1, 95, - -1, -1, -1, 99, 100, 101, 1, 71, 104, 105, - 142, 142, 108, 77, 142, 111, 112, 81, 142, 142, - 84, 85, 86, 119, 88, 142, 90, 142, 92, 147, - 146, 95, 146, 146, 146, 99, 100, 101, 146, 146, - 104, 105, 146, 148, 108, 148, 148, 111, 112, 148, + 52, 150, 54, 139, 1, 71, 47, 48, 49, 143, + 149, 77, 146, 12, 66, 81, 8, 9, 84, 85, + 86, 15, 88, 29, 90, 146, 92, 15, 149, 95, + 29, 15, 29, 99, 100, 101, 1, 35, 104, 105, + 31, 32, 108, 149, 29, 111, 112, 153, 66, 67, + 72, 73, 29, 119, 29, 72, 73, 97, 98, 102, + 103, 106, 107, 29, 29, 54, 148, 149, 148, 149, + 148, 149, 31, 66, 71, 77, 77, 67, 74, 79, + 77, 67, 148, 149, 81, 67, 67, 84, 85, 86, + 68, 88, 79, 90, 67, 92, 67, 67, 95, 67, + 79, 77, 99, 100, 101, 1, 71, 104, 105, 89, + 82, 108, 77, 82, 111, 112, 81, 91, 123, 84, + 85, 86, 119, 88, 86, 90, 87, 92, 123, 93, + 95, 94, 139, 29, 99, 100, 101, 1, 94, 104, + 105, 94, 94, 108, 102, 96, 111, 112, 96, 109, + 153, 148, 149, 102, 119, 110, 139, -1, -1, 126, + -1, -1, -1, -1, -1, 29, -1, -1, -1, 126, + -1, -1, -1, 127, -1, 71, -1, -1, 128, -1, + -1, 77, 128, 148, 149, 81, 128, 128, 84, 85, + 86, 129, 88, -1, 90, 142, 92, 142, 142, 95, + -1, -1, 142, 99, 100, 101, 1, 71, 104, 105, + 142, 142, 108, 77, 142, 111, 112, 81, 142, 146, + 84, 85, 86, 119, 88, 146, 90, 146, 92, 146, + 146, 95, 146, 146, 146, 99, 100, 101, 147, 149, + 104, 105, 148, 148, 108, 148, 148, 111, 112, 148, 148, 148, 148, 149, 148, 119, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, - 148, 148, 148, 148, 148, 148, 71, 148, 150, 149, + 148, 148, 148, 148, 148, 148, 71, 149, 149, 149, 149, 149, 77, 149, 148, 149, 81, 149, 149, 84, 85, 86, 149, 88, 149, 90, 29, 92, 149, 149, - 95, 149, 149, 149, 99, 100, 101, 149, 149, 104, - 105, 149, 151, 108, 47, 48, 111, 112, 150, 150, + 95, 149, 149, 149, 99, 100, 101, 150, 150, 104, + 105, 150, 150, 108, 47, 48, 111, 112, 150, 150, 53, 150, 55, 150, 119, 150, 150, 150, 150, 150, 150, 150, 150, 150, 67, 150, 150, 150, 150, 47, 48, 150, 75, 76, 150, 53, 79, 55, 150, 150, 83, 150, 150, 148, 149, 151, 150, 150, 150, 67, - 150, 150, 150, 150, 150, 150, -1, 75, 76, 151, + 150, 150, 150, 154, 151, 151, 151, 75, 76, 151, 151, 79, 151, 151, 151, 83, 151, 151, 151, 151, - 151, 151, 151, 151, 151, 151, 151, 151, -1, 152, + 151, 151, 151, 151, 151, 151, -1, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 130, 152, 132, 133, 134, 135, 136, 137, 138, 152, 152, 152, 152, - 152, 144, 145, 152, 152, 152, 152, 152, 151, 153, - 153, 152, 130, 155, 132, 133, 134, 135, 136, 137, - 138, 154, 154, -1, 155, 155, 144, 145, 155, 155, + 152, 144, 145, 152, 152, 152, 152, 152, 151, -1, + 153, 155, 130, 154, 132, 133, 134, 135, 136, 137, + 138, 155, 155, 155, 155, 155, 144, 145, 155, 155, 155, 155, 155, 151, 155, 153, 155, -1, 155, 155, - 155, 155, 155, -1, 156 + -1, 156 ); protected $actionBase = array( - 0, 220, 295, 445, 370, 109, 109, 180, 730, -2, - -2, 135, -2, -2, -2, 655, 756, 724, 756, 554, - 623, 825, 825, 825, 305, 353, 562, 562, 861, 401, - 562, 484, 291, 377, 154, 441, 540, 505, 505, 505, - 505, 134, 134, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, - 505, 505, 505, 187, 179, 521, 429, 728, 729, 731, - 732, 858, 668, 859, 799, 800, 662, 801, 802, 803, - 805, 806, 834, 807, 888, 808, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, -3, 365, 225, - 308, 620, 275, 552, 552, 552, 552, 552, 552, 552, - 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 617, 659, 659, - 659, 463, 887, 508, 912, 912, 912, 912, 912, 912, + 0, 220, 295, 445, 370, 357, 357, 307, 728, -2, + -2, 135, -2, -2, -2, 623, 724, 655, 724, 554, + 756, 825, 825, 825, 151, 188, 476, 476, 860, 146, + 476, 328, 253, 114, 621, 393, 390, 502, 502, 502, + 502, 134, 134, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, + 502, 502, 502, 179, 178, 539, 523, 715, 735, 737, + 738, 858, 668, 857, 796, 797, 561, 798, 799, 800, + 801, 802, 795, 803, 886, 805, 568, 568, 568, 568, + 568, 568, 568, 568, 568, 568, 568, 273, 248, 225, + 308, 274, 628, 365, 365, 365, 365, 365, 365, 365, + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, + 175, 175, 175, 175, 175, 175, 175, 320, 553, 553, + 553, 489, 887, 526, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 493, -20, -20, - 477, 665, 402, 496, 210, 482, 197, 25, 25, 25, - 25, 25, 17, 45, 5, 5, 5, 5, 335, 380, - 380, 380, 380, 118, 118, 118, 118, 835, 819, 818, - 814, 311, 311, 686, 686, 633, 754, 538, 538, 542, - 542, 420, 420, 420, 420, 420, 420, 420, 420, 420, - 420, 428, 105, 856, 130, 130, 130, 130, 435, 435, - 435, 318, 199, 678, 918, 318, 248, 248, 248, 297, - 297, 297, 76, 637, 398, 86, 86, 86, 86, 398, - 86, 86, 572, 572, 572, 494, 511, 648, 325, 488, - 490, 443, 673, 798, 677, 748, 532, 705, 96, 636, - 704, 886, 676, 886, 591, 578, 570, 696, 355, 842, - -6, 187, 530, 423, 634, 715, 193, 726, 267, 38, - 383, 534, 110, 279, 752, 723, 862, 860, 249, 669, - 634, 634, 634, 137, 247, 751, 758, 110, 113, 515, - 515, 515, 515, 797, 750, 515, 515, 515, 515, 796, - 795, 67, 268, 811, 74, 733, 644, 644, 640, 640, - 644, 644, 644, 644, 654, 651, 644, 850, 843, 843, - 640, 641, 640, 654, 651, 852, 852, 852, 852, 640, - 651, 640, 640, 644, 640, 843, 843, 651, 633, 843, - 491, 651, 680, 644, 635, 635, 852, 718, 717, 640, - 640, 624, 843, 843, 843, 624, 651, 852, 672, 702, - 178, 843, 852, 664, 641, 664, 672, 651, 664, 641, - 641, 664, 20, 656, 645, 851, 853, 839, 782, 626, - 625, 847, 846, 855, 848, 845, 663, 706, 734, 735, - 533, 638, 639, 631, 632, 697, 647, 683, 676, 707, - 629, 629, 629, 679, 688, 679, 629, 629, 629, 629, - 629, 629, 629, 629, 917, 692, 689, 685, 658, 749, - 539, 716, 670, 550, 770, 613, 706, 706, 832, 874, - 883, 898, 897, 652, 842, 876, 679, 907, 722, 430, - 657, 841, 833, 713, 712, 679, 838, 679, 769, 679, - 866, 831, 643, 830, 706, 828, 629, 864, 916, 915, - 914, 913, 911, 909, 899, 906, 630, 905, 747, 650, - 882, 47, 854, 696, 628, 708, 746, 499, 904, 827, - 679, 679, 765, 759, 679, 763, 745, 721, 889, 744, - 881, 903, 613, 878, 679, 675, 900, 499, 660, 642, - 857, 653, 743, 849, 863, 781, 779, 608, 646, 826, - 661, 742, 885, 884, 627, 741, 778, 606, 774, 667, - 822, 773, 824, 740, 821, 793, 875, 674, 707, 703, - 666, 671, 649, 772, 791, 877, 739, 738, 737, 789, - 736, 788, 0, 0, 0, 0, 0, 0, 0, 0, + 477, 661, 402, 629, 210, 332, 197, 25, 25, 25, + 25, 25, 17, 141, 5, 5, 5, 5, 335, 122, + 122, 122, 122, 118, 118, 118, 118, 471, 396, 396, + 682, 682, 642, 774, 579, 579, 537, 537, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 301, 633, + 853, 296, 296, 296, 296, 514, 514, 514, 143, 484, + 637, 915, 143, 521, 521, 521, 446, 446, 446, 113, + 648, 398, 235, 235, 235, 235, 398, 235, 235, 577, + 577, 577, 439, 499, 651, 100, 379, 486, 433, 672, + 806, 669, 788, 540, 696, 111, 703, 701, 617, 662, + 617, 603, 598, 575, 673, 312, 847, 147, 179, 538, + 481, 631, 744, 292, 736, 66, 331, 423, 542, 355, + 382, 710, 731, 856, 855, 339, 678, 631, 631, 631, + 408, 106, 770, 772, 355, -8, 602, 602, 602, 602, + 782, 773, 602, 602, 602, 602, 781, 778, 316, 230, + 822, 215, 746, 618, 618, 644, 644, 618, 618, 618, + 618, 620, 622, 618, 834, 849, 849, 644, 641, 644, + 620, 622, 824, 824, 824, 824, 644, 622, 644, 644, + 618, 644, 849, 849, 622, 642, 849, 67, 622, 663, + 618, 653, 653, 824, 714, 730, 644, 644, 666, 849, + 849, 849, 666, 622, 824, 660, 711, 38, 849, 824, + 645, 641, 645, 660, 622, 645, 641, 641, 645, 20, + 654, 634, 833, 841, 838, 749, 625, 615, 851, 850, + 842, 852, 848, 614, 708, 723, 726, 626, 638, 639, + 647, 650, 676, 649, 674, 662, 693, 627, 627, 627, + 679, 680, 679, 627, 627, 627, 627, 627, 627, 627, + 627, 914, 689, 688, 670, 658, 732, 632, 707, 667, + 512, 750, 613, 708, 708, 791, 874, 883, 889, 829, + 619, 847, 876, 679, 904, 718, 47, 636, 846, 789, + 699, 704, 679, 845, 679, 751, 679, 866, 793, 652, + 832, 708, 831, 627, 864, 913, 911, 909, 907, 906, + 905, 896, 903, 630, 900, 729, 659, 882, 452, 854, + 673, 692, 706, 722, 830, 268, 899, 828, 679, 679, + 752, 748, 679, 754, 721, 717, 862, 747, 881, 898, + 613, 878, 679, 671, 827, 897, 268, 643, 624, 859, + 656, 739, 835, 863, 839, 758, 550, 582, 826, 777, + 821, 635, 740, 885, 884, 861, 742, 759, 564, 763, + 646, 819, 765, 843, 743, 818, 814, 875, 657, 693, + 675, 665, 664, 640, 769, 811, 877, 745, 741, 734, + 808, 733, 807, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 134, 134, 134, 134, -2, -2, -2, -2, - 0, 0, -2, 0, 0, 0, 134, 134, 134, 134, + 0, 0, 0, 134, 134, 134, 134, -2, -2, -2, + -2, 0, 0, -2, 0, 0, 0, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, - 134, 134, 0, 0, 134, 134, 134, 134, 134, 134, + 134, 134, 134, 0, 0, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, @@ -535,43 +535,43 @@ class Php5 extends \PhpParser\ParserAbstract 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, - 134, 134, 134, 134, 568, 568, 568, 568, 568, 568, + 134, 134, 134, 134, 134, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 568, -20, - -20, -20, -20, 568, -20, -20, -20, -20, -20, -20, - -20, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, -20, 568, - 568, 568, -20, 420, -20, 420, 420, 420, 420, 420, - 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, - 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, - 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, - 420, 420, 420, 420, 420, 420, 420, 420, 568, 0, - 0, 568, -20, 568, -20, 568, -20, 568, 568, 568, - 568, 568, 568, -20, -20, -20, -20, -20, -20, 0, - 248, 248, 248, 248, -20, -20, -20, -20, 55, 55, - 55, 55, 420, 420, 420, 420, 420, 420, 248, 248, - 297, 297, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 420, 55, 420, 644, 644, 644, 644, 641, - 641, 641, 644, 398, 398, 398, 644, 0, 0, 0, - 0, 0, 0, 644, 398, 0, 420, 420, 420, 420, - 0, 420, 420, 644, 644, 644, 641, 644, 398, 641, - 641, 644, 843, 573, 573, 573, 573, 499, 110, 0, - 644, 644, 641, 641, 641, 0, 0, 0, 843, 0, - 640, 0, 0, 0, 0, 629, 430, 0, 375, 0, - 0, 0, 0, 0, 0, 652, 375, 452, 452, 0, - 630, 629, 629, 629, 0, 0, 652, 652, 0, 0, - 0, 0, 0, 0, 481, 652, 0, 0, 0, 0, - 481, 360, 0, 0, 360, 0, 499 + 568, 568, 568, 568, 568, 568, 568, 568, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 568, + -20, -20, -20, -20, 568, -20, -20, -20, -20, -20, + -20, -20, 568, 568, 568, 568, 568, 568, 568, 568, + 568, 568, 568, 568, 568, 568, 568, 568, 568, -20, + 568, 568, 568, -20, 270, -20, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 270, 270, 270, 270, 270, 270, 568, + 0, 0, 568, -20, 568, -20, 568, -20, 568, 568, + 568, 568, 568, 568, -20, -20, -20, -20, -20, -20, + 0, 521, 521, 521, 521, -20, -20, -20, -20, -36, + 270, 270, 270, 270, 270, 270, 521, 521, 446, 446, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 270, -36, 270, 618, 618, 618, 618, 641, 641, 641, + 618, 398, 398, 398, 618, 0, 0, 0, 0, 0, + 0, 618, 398, 0, 270, 270, 270, 270, 0, 270, + 270, 618, 618, 618, 641, 618, 398, 641, 641, 618, + 849, 580, 580, 580, 580, 268, 355, 0, 618, 618, + 641, 641, 641, 0, 0, 0, 849, 0, 644, 0, + 0, 0, 0, 627, 47, 0, 430, 0, 0, 0, + 0, 0, 0, 619, 430, 466, 466, 0, 630, 627, + 627, 627, 0, 0, 619, 619, 0, 0, 0, 0, + 0, 0, 442, 619, 0, 0, 0, 0, 442, 140, + 0, 0, 140, 0, 268 ); protected $actionDefault = array( 3,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, 530, 530,32767,32767, - 485,32767,32767,32767,32767,32767,32767, 291, 291, 291, - 32767,32767,32767, 518, 518, 518, 518, 518, 518, 518, - 518, 518, 518, 518,32767,32767,32767,32767,32767, 373, + 32767,32767,32767,32767,32767,32767, 531, 531,32767,32767, + 486,32767,32767,32767,32767,32767,32767, 292, 292, 292, + 32767,32767,32767, 519, 519, 519, 519, 519, 519, 519, + 519, 519, 519, 519,32767,32767,32767,32767,32767, 374, 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, @@ -579,134 +579,129 @@ class Php5 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,32767,32767, - 32767,32767,32767,32767,32767, 379, 535,32767,32767,32767, + 32767,32767,32767,32767,32767, 380, 536,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 354, 355, 357, 358, - 290, 519, 240, 380, 534, 289, 242, 318, 489,32767, - 32767,32767, 320, 119, 251, 196, 488, 122, 288, 227, - 372, 374, 319, 295, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 294, 445, 351, 350, - 349, 447,32767, 446, 482, 482, 485,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 355, 356, 358, 359, + 291, 520, 240, 381, 535, 290, 242, 319, 490,32767, + 32767,32767, 321, 119, 251, 196, 489, 122, 289, 227, + 373, 375, 320, 296, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 295, 446, 352, 351, + 350, 448,32767, 447, 483, 483, 486,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,32767,32767,32767,32767,32767,32767, 316, 473, 472, - 317, 443, 321, 444, 323, 448, 322, 339, 340, 337, - 338, 341, 450, 449, 466, 467, 464, 465, 293, 342, - 343, 344, 345, 468, 469, 470, 471, 274, 274, 274, - 274,32767,32767, 529, 529,32767,32767, 330, 331, 457, - 458,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767, 275,32767, 231, 231, 231, 231,32767,32767, - 32767, 231,32767,32767,32767,32767, 325, 326, 324, 452, - 453, 451,32767, 419,32767,32767,32767,32767,32767, 421, + 32767,32767,32767,32767,32767,32767,32767, 317, 474, 473, + 318, 444, 322, 445, 324, 449, 323, 340, 341, 338, + 339, 342, 451, 450, 467, 468, 465, 466, 294, 343, + 344, 345, 346, 469, 470, 471, 472, 275,32767,32767, + 530, 530,32767,32767, 331, 332, 458, 459,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767,32767, 276, + 32767, 231, 231, 231, 231,32767,32767,32767, 231,32767, + 32767,32767,32767, 326, 327, 325, 453, 454, 452,32767, + 420,32767,32767,32767,32767,32767, 422,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 491,32767, + 32767,32767,32767,32767, 504, 409,32767,32767,32767, 402, + 32767, 215, 217, 164, 477,32767,32767,32767,32767,32767, + 509, 336,32767,32767,32767,32767,32767, 545,32767, 504, + 32767,32767,32767,32767,32767,32767, 349, 328, 329, 330, + 32767,32767,32767,32767, 508, 502, 461, 462, 463, 464, + 32767,32767, 455, 456, 457, 460,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767, 490,32767,32767,32767,32767,32767, 503, 408,32767, - 32767,32767, 401,32767, 215, 217, 164, 476,32767,32767, - 32767,32767,32767, 508, 335,32767,32767,32767,32767,32767, - 544,32767, 503,32767,32767,32767,32767,32767,32767, 348, - 327, 328, 329,32767,32767,32767,32767, 507, 501, 460, - 461, 462, 463,32767,32767, 454, 455, 456, 459,32767, - 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 168,32767, 416, 422, 422, - 32767,32767,32767,32767, 168,32767,32767,32767,32767,32767, - 168,32767,32767,32767,32767, 506, 505, 168,32767, 402, - 484, 168, 181,32767, 179, 179,32767, 201, 201,32767, - 32767, 183, 477, 496,32767, 183, 168,32767, 390, 170, - 484,32767,32767, 233,32767, 233, 390, 168, 233,32767, - 32767, 233,32767, 84, 426,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 403,32767,32767, - 32767, 369, 370, 479, 492,32767, 493,32767, 401,32767, - 333, 334, 336, 313,32767, 315, 359, 360, 361, 362, - 363, 364, 365, 367,32767, 406,32767, 409,32767,32767, - 32767, 86, 111, 250,32767, 542, 86, 404,32767,32767, - 298, 542,32767,32767,32767,32767, 537,32767,32767, 292, - 32767,32767,32767, 86, 86, 246,32767, 166,32767, 527, - 32767, 543,32767, 501, 405,32767, 332,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 502,32767,32767,32767, - 32767, 222,32767, 439,32767, 86,32767, 182,32767,32767, - 296, 241,32767,32767, 536,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 167,32767,32767, 184,32767,32767, - 501,32767,32767,32767,32767,32767,32767,32767, 287,32767, - 32767,32767,32767,32767, 501,32767,32767, 226,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 84, 60,32767, - 268,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767, 124, 124, 3, 124, 124, 3, 124, 124, - 124, 124, 124, 124, 124, 124, 124, 124, 124, 209, - 253, 212, 201, 201, 161, 253, 253, 253, 124, 124, - 260 + 32767,32767, 168,32767, 417, 423, 423,32767,32767,32767, + 32767, 168,32767,32767,32767,32767,32767, 168,32767,32767, + 32767,32767, 507, 506, 168,32767, 403, 485, 168, 181, + 32767, 179, 179,32767, 201, 201,32767,32767, 183, 478, + 497,32767, 183, 168,32767, 391, 170, 485,32767,32767, + 233,32767, 233, 391, 168, 233,32767,32767, 233,32767, + 84, 427,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767, 404,32767,32767,32767, 370, 371, + 480, 493,32767, 494,32767, 402,32767, 334, 335, 337, + 314,32767, 316, 360, 361, 362, 363, 364, 365, 366, + 368,32767, 407,32767, 410,32767,32767,32767, 86, 111, + 250,32767, 543, 86, 405,32767,32767, 299, 543,32767, + 32767,32767,32767, 538,32767,32767, 293,32767,32767,32767, + 86, 86, 246,32767, 166,32767, 528,32767, 544,32767, + 502, 406,32767, 333,32767,32767,32767,32767,32767,32767, + 32767,32767,32767, 503,32767,32767,32767,32767, 222,32767, + 440,32767, 86,32767,32767, 182,32767,32767, 297, 241, + 32767,32767, 537,32767,32767,32767,32767,32767,32767,32767, + 32767,32767, 167,32767,32767,32767, 184,32767,32767, 502, + 32767,32767,32767,32767,32767,32767,32767, 288,32767,32767, + 32767,32767,32767,32767,32767, 502,32767,32767, 226,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 84, 60, + 32767, 269,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767, 124, 124, 3, 124, 124, 253, 3, + 253, 124, 253, 253, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 209, 212, 201, 201, 161, 124, + 124, 261 ); protected $goto = array( 162, 162, 136, 136, 141, 144, 136, 137, 138, 139, 146, 183, 164, 160, 160, 160, 160, 141, 141, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 156, 157, 158, 159, 180, 135, 181, 500, 501, 364, - 502, 506, 507, 508, 509, 510, 511, 512, 513, 970, + 156, 157, 158, 159, 180, 135, 181, 497, 498, 361, + 499, 503, 504, 505, 506, 507, 508, 509, 510, 972, 140, 142, 143, 145, 167, 172, 182, 198, 247, 250, 252, 254, 256, 257, 258, 259, 260, 261, 269, 270, - 271, 272, 287, 288, 316, 317, 318, 380, 381, 382, - 556, 184, 185, 186, 187, 188, 189, 190, 191, 192, + 271, 272, 284, 285, 313, 314, 315, 377, 378, 379, + 553, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 147, 148, 149, 163, 150, 165, - 151, 199, 166, 152, 153, 154, 200, 155, 133, 629, - 574, 761, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 574, 574, 574, 574, 574, - 574, 574, 574, 574, 574, 1108, 637, 1108, 1108, 1108, - 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, - 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, - 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, - 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, - 343, 791, 504, 504, 504, 504, 504, 504, 517, 515, - 517, 515, 504, 504, 504, 504, 504, 504, 504, 504, - 504, 504, 516, 557, 516, 8, 760, 529, 892, 892, - 1199, 1199, 754, 856, 856, 856, 856, 170, 851, 857, - 529, 529, 173, 174, 175, 389, 390, 391, 392, 169, - 197, 201, 203, 251, 253, 255, 262, 263, 264, 265, - 266, 267, 273, 274, 275, 276, 289, 290, 319, 320, - 321, 395, 396, 397, 398, 171, 176, 248, 249, 177, - 178, 179, 388, 614, 549, 549, 580, 545, 590, 593, - 635, 822, 547, 547, 503, 505, 536, 553, 581, 584, - 594, 600, 530, 1177, 573, 1177, 573, 573, 573, 573, - 573, 573, 573, 573, 573, 573, 573, 573, 573, 573, - 573, 573, 573, 573, 573, 573, 573, 573, 573, 573, - 573, 573, 573, 573, 573, 573, 573, 573, 573, 573, - 573, 573, 573, 573, 573, 573, 573, 573, 573, 618, - 521, 555, 621, 862, 579, 362, 597, 346, 405, 910, - 526, 526, 526, 550, 526, 558, 559, 560, 561, 562, - 563, 564, 565, 567, 596, 587, 612, 544, 526, 278, - 279, 280, 1203, 439, 439, 439, 439, 439, 439, 1084, - 1083, 784, 604, 439, 439, 439, 439, 439, 439, 439, - 439, 439, 439, 1073, 365, 1073, 899, 899, 899, 899, - 1210, 1210, 1157, 899, 344, 345, 613, 899, 784, 784, - 1196, 329, 314, 3, 4, 377, 1210, 1073, 1073, 1073, - 1073, 1017, 1073, 1073, 526, 526, 1209, 1209, 543, 575, - 526, 526, 470, 896, 526, 905, 1169, 370, 370, 370, - 399, 349, 1209, 1191, 1191, 1191, 780, 371, 370, 370, - 1212, 527, 1066, 375, 370, 778, 914, 403, 372, 372, - 372, 554, 370, 1224, 1059, 777, 777, 759, 788, 785, - 785, 785, 787, 919, 956, 776, 916, 523, 916, 866, - 878, 860, 858, 860, 659, 372, 518, 887, 882, 387, - 542, 668, 661, 569, 541, 601, 889, 619, 620, 885, - 624, 625, 632, 634, 639, 641, 948, 452, 454, 940, - 640, 455, 468, 1089, 1109, 622, 938, 1064, 1176, 585, - 1176, 1027, 19, 15, 358, 1193, 1193, 1193, 359, 1154, - 1069, 1070, 0, 0, 1066, 534, 968, 0, 0, 546, - 0, 0, 568, 520, 540, 0, 523, 1067, 1168, 1067, - 0, 0, 1175, 23, 459, 520, 1068, 540, 610, 0, - 0, 0, 0, 0, 519, 13, 524, 442, 0, 444, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 783, 1217, 0, 0, 0, 617, - 0, 0, 0, 0, 1065, 626, 0, 0, 0, 0, + 151, 199, 166, 152, 153, 154, 200, 155, 133, 630, + 571, 792, 571, 571, 571, 571, 571, 571, 571, 571, + 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, + 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, + 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, + 571, 571, 571, 571, 571, 1110, 762, 1110, 1110, 1110, + 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, + 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, + 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, + 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, + 501, 501, 501, 501, 501, 501, 512, 638, 512, 761, + 501, 501, 501, 501, 501, 501, 501, 501, 501, 501, + 513, 755, 513, 893, 893, 1201, 1201, 527, 585, 613, + 857, 857, 857, 857, 170, 852, 858, 1086, 1085, 173, + 174, 175, 386, 387, 388, 389, 169, 197, 201, 203, + 251, 253, 255, 262, 263, 264, 265, 266, 267, 273, + 274, 275, 276, 286, 287, 316, 317, 318, 392, 393, + 394, 395, 171, 176, 248, 249, 177, 178, 179, 385, + 615, 546, 546, 578, 542, 1212, 1212, 823, 340, 544, + 544, 500, 502, 533, 550, 579, 582, 592, 599, 619, + 863, 1212, 622, 911, 570, 359, 570, 570, 570, 570, + 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, + 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, + 570, 570, 570, 570, 570, 570, 570, 570, 570, 570, + 570, 570, 570, 570, 570, 570, 570, 570, 570, 555, + 556, 557, 558, 559, 560, 561, 562, 564, 595, 518, + 554, 326, 311, 594, 526, 609, 610, 949, 552, 523, + 523, 523, 577, 523, 588, 591, 636, 526, 526, 547, + 436, 436, 436, 436, 436, 436, 541, 523, 1205, 950, + 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, + 1075, 362, 1075, 900, 900, 900, 900, 596, 343, 402, + 900, 514, 1159, 514, 900, 1179, 603, 1179, 3, 4, + 367, 367, 367, 614, 1075, 1075, 1075, 1075, 785, 1075, + 1075, 367, 367, 1178, 1198, 1178, 1171, 367, 374, 467, + 1195, 1195, 1195, 523, 523, 367, 1226, 540, 572, 523, + 523, 1019, 1068, 523, 897, 785, 785, 906, 346, 917, + 520, 917, 396, 368, 781, 372, 915, 1177, 970, 779, + 524, 539, 669, 665, 566, 400, 1061, 920, 600, 760, + 551, 890, 620, 621, 886, 625, 626, 633, 635, 640, + 642, 789, 879, 861, 859, 861, 664, 1091, 515, 888, + 883, 1193, 1193, 1193, 867, 1029, 19, 15, 355, 341, + 342, 958, 778, 778, 356, 1066, 786, 786, 786, 788, + 452, 531, 777, 1156, 465, 543, 565, 583, 0, 520, + 1071, 1072, 0, 0, 1068, 0, 0, 23, 1211, 1211, + 456, 0, 611, 369, 369, 369, 0, 1069, 1170, 1069, + 0, 13, 538, 0, 1211, 0, 1070, 449, 451, 942, + 641, 0, 1214, 0, 1111, 623, 940, 0, 0, 0, + 369, 0, 618, 0, 384, 0, 0, 1067, 627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 517, 537, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 517, 0, 537, 0, 0, 0, 0, + 0, 532, 516, 0, 521, 439, 0, 441, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 535 + 0, 0, 784, 1219 ); protected $gotoCheck = array( @@ -721,101 +716,96 @@ class Php5 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, 56, - 66, 15, 66, 66, 66, 66, 66, 66, 66, 66, + 66, 28, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, - 66, 66, 66, 66, 66, 123, 8, 123, 123, 123, - 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, - 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, - 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, - 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, - 69, 28, 114, 114, 114, 114, 114, 114, 119, 66, - 119, 66, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 46, 114, 94, 14, 46, 74, 74, - 74, 74, 5, 66, 66, 66, 66, 26, 66, 66, - 46, 46, 26, 26, 26, 26, 26, 26, 26, 26, + 66, 66, 66, 66, 66, 124, 15, 124, 124, 124, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 115, 115, 115, 115, 115, 115, 66, 8, 66, 14, + 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, + 115, 5, 115, 74, 74, 74, 74, 99, 39, 39, + 66, 66, 66, 66, 26, 66, 66, 122, 122, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 50, 50, 50, 50, 50, 50, 59, 59, - 59, 49, 50, 50, 50, 50, 50, 50, 50, 50, - 50, 50, 98, 115, 56, 115, 56, 56, 56, 56, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 50, + 50, 50, 50, 50, 50, 140, 140, 49, 69, 50, + 50, 50, 50, 50, 50, 50, 50, 50, 50, 60, + 32, 140, 60, 81, 56, 60, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 56, 56, 56, 56, 60, - 10, 2, 60, 32, 2, 60, 67, 67, 67, 81, - 10, 10, 10, 106, 10, 107, 107, 107, 107, 107, - 107, 107, 107, 107, 107, 39, 39, 10, 10, 64, - 64, 64, 137, 56, 56, 56, 56, 56, 56, 121, - 121, 22, 124, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 45, 56, 56, 56, 56, 56, - 139, 139, 128, 56, 69, 69, 48, 56, 22, 22, - 135, 122, 122, 29, 29, 47, 139, 56, 56, 56, - 56, 99, 56, 56, 10, 10, 138, 138, 10, 10, - 10, 10, 56, 76, 10, 78, 79, 12, 12, 12, - 21, 17, 138, 8, 8, 8, 24, 11, 12, 12, - 138, 10, 79, 16, 12, 23, 82, 20, 120, 120, - 120, 10, 12, 12, 110, 22, 22, 13, 25, 22, - 22, 22, 22, 83, 96, 22, 12, 12, 12, 68, - 13, 13, 13, 13, 13, 120, 13, 13, 13, 120, - 31, 71, 31, 31, 8, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 94, 7, 7, 7, - 7, 62, 105, 33, 7, 7, 7, 112, 116, 63, - 116, 33, 33, 33, 33, 116, 116, 116, 57, 127, - 79, 79, -1, -1, 79, 57, 98, -1, -1, 57, - -1, -1, 33, 8, 8, -1, 12, 79, 79, 79, - -1, -1, 116, 33, 57, 8, 79, 8, 33, -1, - -1, -1, -1, -1, 8, 57, 8, 8, -1, 8, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 8, 8, -1, -1, -1, 12, - -1, -1, -1, -1, 12, 12, -1, -1, -1, -1, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 108, + 108, 108, 108, 108, 108, 108, 108, 108, 108, 10, + 46, 123, 123, 64, 46, 64, 64, 95, 2, 10, + 10, 10, 2, 10, 59, 59, 59, 46, 46, 107, + 56, 56, 56, 56, 56, 56, 10, 10, 138, 95, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 45, 56, 56, 56, 56, 56, 67, 67, 67, + 56, 120, 129, 120, 56, 116, 125, 116, 29, 29, + 12, 12, 12, 48, 56, 56, 56, 56, 22, 56, + 56, 12, 12, 117, 136, 117, 79, 12, 47, 56, + 117, 117, 117, 10, 10, 12, 12, 10, 10, 10, + 10, 100, 79, 10, 76, 22, 22, 78, 17, 12, + 12, 12, 21, 11, 24, 16, 82, 117, 99, 23, + 10, 31, 71, 31, 31, 20, 111, 83, 31, 13, + 10, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 31, 25, 13, 13, 13, 13, 13, 33, 13, 13, + 13, 8, 8, 8, 68, 33, 33, 33, 33, 69, + 69, 97, 22, 22, 57, 113, 22, 22, 22, 22, + 62, 57, 22, 128, 106, 57, 33, 63, -1, 12, + 79, 79, -1, -1, 79, -1, -1, 33, 139, 139, + 57, -1, 33, 121, 121, 121, -1, 79, 79, 79, + -1, 57, 8, -1, 139, -1, 79, 7, 7, 7, + 7, -1, 139, -1, 7, 7, 7, -1, -1, -1, + 121, -1, 12, -1, 121, -1, -1, 12, 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 8, 8, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 8, -1, 8, -1, -1, -1, -1, + -1, 99, 8, -1, 8, 8, -1, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 98 + -1, -1, 8, 8 ); protected $gotoBase = array( - 0, 0, -293, 0, 0, 221, 0, 512, 145, 0, - 28, 121, 135, 475, 224, 109, 114, 129, 0, 0, - 60, 117, 69, 115, 122, 58, 35, 0, 191, -245, - 0, -143, 333, 106, 0, 0, 0, 0, 0, 337, - 0, 0, -24, 0, 0, 364, 199, 133, 134, 273, - 1, 0, 0, 0, 0, 0, 102, 108, 0, -17, - -116, 0, 76, 74, -286, 0, -92, 30, 67, -248, - 0, 140, 0, 0, -53, 0, 132, 0, 130, 105, - 0, 334, 113, 62, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 214, 0, 61, 0, 261, 128, - 0, 0, 0, 0, 0, 56, 336, 321, 0, 0, - 55, 0, 103, 0, -79, 2, 227, 0, 0, -93, - 160, 80, 98, -47, 187, 0, 0, 79, 206, 0, - 0, 0, 0, 0, 0, 136, 0, 352, 123, 97, - 0, 0 + 0, 0, -277, 0, 0, 210, 0, 552, 196, 0, + 40, 130, 111, 477, 207, 154, 119, 139, 0, 0, + 71, 132, 109, 122, 133, 74, 32, 0, 101, -251, + 0, -173, 280, 83, 0, 0, 0, 0, 0, 190, + 0, 0, -24, 0, 0, 361, 336, 149, 144, 269, + 1, 0, 0, 0, 0, 0, 102, 87, 0, 72, + -163, 0, 78, 75, -287, 0, -92, 84, 85, -157, + 0, 114, 0, 0, -55, 0, 146, 0, 145, 98, + 0, 278, 116, 59, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 90, 0, 91, 0, 186, + 151, 0, 0, 0, 0, 0, 61, 352, 305, 0, + 0, 60, 0, 94, 0, -78, 117, 135, 0, 0, + 113, 238, -69, 41, -47, 211, 0, 0, 66, 206, + 0, 0, 0, 0, 0, 0, 153, 0, 358, 228, + -25, 0, 0 ); protected $gotoDefault = array( - -32768, 472, 672, 2, 673, 744, 752, 607, 486, 638, - 487, 522, 1187, 797, 798, 799, 367, 413, 488, 366, - 400, 393, 786, 779, 781, 789, 168, 401, 792, 1, - 794, 528, 830, 1018, 354, 802, 355, 599, 804, 538, - 806, 807, 134, 368, 369, 539, 489, 376, 588, 821, - 268, 373, 823, 356, 824, 833, 357, 469, 464, 570, - 616, 434, 451, 582, 277, 548, 1081, 577, 865, 342, - 873, 669, 881, 884, 490, 571, 895, 456, 903, 1094, - 383, 909, 915, 920, 923, 414, 402, 595, 927, 928, - 7, 932, 630, 631, 947, 302, 955, 608, 969, 419, - 1037, 1039, 491, 492, 532, 463, 514, 537, 493, 1060, - 445, 404, 1063, 494, 495, 435, 436, 1078, 348, 1162, - 347, 453, 313, 1149, 591, 1113, 460, 1202, 1158, 341, - 496, 497, 363, 1181, 378, 1197, 440, 1204, 1211, 337, - 552, 578 + -32768, 469, 673, 2, 674, 745, 753, 606, 483, 639, + 484, 519, 1189, 798, 799, 800, 364, 410, 485, 363, + 397, 390, 787, 780, 782, 790, 168, 398, 793, 1, + 795, 525, 831, 1020, 351, 803, 352, 598, 805, 535, + 807, 808, 134, 365, 366, 536, 486, 373, 586, 822, + 268, 370, 824, 353, 825, 834, 354, 466, 461, 567, + 617, 431, 448, 580, 574, 545, 1083, 575, 866, 339, + 874, 670, 882, 885, 487, 568, 896, 453, 904, 1096, + 380, 910, 916, 921, 277, 924, 411, 399, 593, 929, + 930, 7, 934, 631, 632, 8, 299, 957, 607, 971, + 416, 1039, 1041, 488, 489, 529, 460, 511, 534, 490, + 1062, 442, 401, 1065, 491, 492, 432, 433, 1080, 345, + 1164, 344, 450, 310, 1151, 589, 1115, 457, 1204, 1160, + 338, 493, 494, 360, 1183, 375, 1199, 437, 1206, 1213, + 334, 549, 576 ); protected $ruleToNonTerminal = array( @@ -844,11 +834,11 @@ class Php5 extends \PhpParser\ParserAbstract 48, 48, 59, 59, 75, 75, 76, 76, 78, 78, 78, 77, 77, 60, 60, 79, 79, 79, 80, 80, 81, 81, 81, 43, 43, 82, 82, 82, 44, 44, - 83, 83, 64, 64, 84, 84, 84, 84, 89, 89, - 90, 90, 91, 91, 91, 91, 91, 92, 93, 93, - 88, 88, 85, 85, 87, 87, 95, 95, 94, 94, - 94, 94, 94, 94, 86, 86, 97, 96, 96, 45, - 45, 39, 39, 42, 42, 42, 42, 42, 42, 42, + 83, 83, 84, 84, 64, 85, 85, 85, 85, 90, + 90, 91, 91, 92, 92, 92, 92, 92, 93, 94, + 94, 89, 89, 86, 86, 88, 88, 96, 96, 95, + 95, 95, 95, 95, 95, 87, 87, 98, 97, 97, + 45, 45, 39, 39, 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, 42, 42, 42, @@ -856,25 +846,25 @@ class Php5 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, 42, 42, 42, 42, 33, 33, 46, - 46, 102, 102, 103, 103, 103, 103, 109, 98, 98, - 105, 105, 111, 111, 112, 113, 113, 113, 113, 113, - 113, 66, 66, 56, 56, 56, 99, 99, 117, 117, - 114, 114, 118, 118, 118, 118, 100, 100, 100, 104, - 104, 104, 110, 110, 123, 123, 123, 123, 123, 123, - 123, 123, 123, 123, 123, 123, 123, 26, 26, 26, - 26, 26, 26, 125, 125, 125, 125, 125, 125, 125, - 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, - 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, - 125, 125, 125, 125, 125, 125, 108, 108, 101, 101, - 101, 101, 124, 124, 127, 127, 126, 126, 128, 128, - 50, 50, 50, 50, 130, 130, 129, 129, 129, 129, - 129, 131, 131, 116, 116, 119, 119, 115, 115, 133, - 132, 132, 132, 132, 120, 120, 120, 120, 107, 107, - 121, 121, 121, 121, 74, 134, 134, 135, 135, 135, - 106, 106, 136, 136, 137, 137, 137, 137, 122, 122, - 122, 122, 139, 140, 138, 138, 138, 138, 138, 138, - 138, 141, 141, 141 + 42, 42, 42, 42, 42, 42, 42, 42, 33, 33, + 46, 46, 103, 103, 104, 104, 104, 104, 110, 99, + 99, 106, 106, 112, 112, 113, 114, 114, 114, 114, + 114, 114, 66, 66, 56, 56, 56, 100, 100, 118, + 118, 115, 115, 119, 119, 119, 119, 101, 101, 101, + 105, 105, 105, 111, 111, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 124, 124, 124, 124, 26, 26, + 26, 26, 26, 26, 126, 126, 126, 126, 126, 126, + 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, + 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, + 126, 126, 126, 126, 126, 126, 126, 109, 109, 102, + 102, 102, 102, 125, 125, 128, 128, 127, 127, 129, + 129, 50, 50, 50, 50, 131, 131, 130, 130, 130, + 130, 130, 132, 132, 117, 117, 120, 120, 116, 116, + 134, 133, 133, 133, 133, 121, 121, 121, 121, 108, + 108, 122, 122, 122, 122, 74, 135, 135, 136, 136, + 136, 107, 107, 137, 137, 138, 138, 138, 138, 123, + 123, 123, 123, 140, 141, 139, 139, 139, 139, 139, + 139, 139, 142, 142, 142 ); protected $ruleToLength = array( @@ -903,37 +893,37 @@ class Php5 extends \PhpParser\ParserAbstract 2, 1, 1, 0, 1, 3, 4, 6, 1, 1, 1, 0, 1, 0, 2, 2, 3, 3, 1, 3, 1, 2, 2, 3, 1, 1, 2, 4, 3, 1, - 1, 3, 2, 0, 3, 3, 9, 3, 1, 3, - 0, 2, 4, 5, 4, 4, 4, 3, 1, 1, - 1, 3, 1, 1, 0, 1, 1, 2, 1, 1, - 1, 1, 1, 1, 1, 3, 1, 1, 3, 3, - 1, 0, 1, 1, 3, 3, 4, 4, 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, 3, 3, 3, 3, 3, 3, 3, + 1, 3, 2, 0, 1, 3, 3, 9, 3, 1, + 3, 0, 2, 4, 5, 4, 4, 4, 3, 1, + 1, 1, 3, 1, 1, 0, 1, 1, 2, 1, + 1, 1, 1, 1, 1, 1, 3, 1, 1, 3, + 3, 1, 0, 1, 1, 3, 3, 4, 4, 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, 3, 3, 3, 1, 3, 5, - 4, 3, 4, 4, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, - 1, 3, 2, 1, 2, 10, 11, 3, 3, 2, - 4, 4, 3, 4, 4, 4, 4, 7, 3, 2, - 0, 4, 1, 3, 2, 2, 4, 6, 2, 2, - 4, 1, 1, 1, 2, 3, 1, 1, 1, 1, - 1, 1, 3, 3, 4, 4, 0, 2, 1, 0, - 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 1, 3, 1, - 4, 3, 1, 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, 5, 4, 4, 3, 1, 3, 1, 1, - 3, 3, 0, 2, 0, 1, 3, 1, 3, 1, - 1, 1, 1, 1, 6, 4, 3, 4, 2, 4, - 4, 1, 3, 1, 2, 1, 1, 4, 1, 1, - 3, 6, 4, 4, 4, 4, 1, 4, 0, 1, - 1, 3, 1, 1, 4, 3, 1, 1, 1, 0, - 0, 2, 3, 1, 3, 1, 4, 2, 2, 2, - 1, 2, 1, 1, 1, 4, 3, 3, 3, 6, - 3, 1, 1, 1 + 3, 3, 3, 3, 2, 2, 2, 2, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, + 5, 4, 3, 4, 4, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, + 1, 1, 3, 2, 1, 2, 10, 11, 3, 3, + 2, 4, 4, 3, 4, 4, 4, 4, 7, 3, + 2, 0, 4, 1, 3, 2, 2, 4, 6, 2, + 2, 4, 1, 1, 1, 2, 3, 1, 1, 1, + 1, 1, 1, 3, 3, 4, 4, 0, 2, 1, + 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 2, 1, 3, + 1, 4, 3, 1, 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, 5, 4, 4, 3, 1, 3, 1, + 1, 3, 3, 0, 2, 0, 1, 3, 1, 3, + 1, 1, 1, 1, 1, 6, 4, 3, 4, 2, + 4, 4, 1, 3, 1, 2, 1, 1, 4, 1, + 1, 3, 6, 4, 4, 4, 4, 1, 4, 0, + 1, 1, 3, 1, 1, 4, 3, 1, 1, 1, + 0, 0, 2, 3, 1, 3, 1, 4, 2, 2, + 2, 1, 2, 1, 1, 1, 4, 3, 3, 3, + 6, 3, 1, 1, 1 ); protected function initReduceCallbacks() { @@ -1713,358 +1703,359 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = new Stmt\StaticVar($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 252 => function ($stackPos) { - $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; + if ($this->semStack[$stackPos-(2-2)] !== null) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; } }, 253 => function ($stackPos) { $this->semValue = array(); }, 254 => function ($stackPos) { - $this->semValue = new Stmt\Property($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkProperty($this->semValue, $stackPos-(3-1)); + $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop($startAttributes + $this->endAttributes); } else { $nop = null; }; + if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 255 => function ($stackPos) { - $this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(3-2)], 0, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Stmt\Property($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkProperty($this->semValue, $stackPos-(3-1)); }, 256 => function ($stackPos) { + $this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(3-2)], 0, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 257 => function ($stackPos) { $this->semValue = new Stmt\ClassMethod($this->semStack[$stackPos-(9-4)], ['type' => $this->semStack[$stackPos-(9-1)], 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-6)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); $this->checkClassMethod($this->semValue, $stackPos-(9-1)); }, - 257 => function ($stackPos) { + 258 => function ($stackPos) { $this->semValue = new Stmt\TraitUse($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 258 => function ($stackPos) { - $this->semValue = array(); - }, 259 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = array(); }, 260 => function ($stackPos) { - $this->semValue = array(); + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 261 => function ($stackPos) { - $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semValue = array(); }, 262 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 263 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(5-1)][0], $this->semStack[$stackPos-(5-1)][1], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); + $this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 264 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], null, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(5-1)][0], $this->semStack[$stackPos-(5-1)][1], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, 265 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], null, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 266 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 267 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]); + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 268 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]); }, 269 => function ($stackPos) { - $this->semValue = array(null, $this->semStack[$stackPos-(1-1)]); - }, - 270 => function ($stackPos) { - $this->semValue = null; - }, - 271 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; - }, - 272 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 270 => function ($stackPos) { + $this->semValue = array(null, $this->semStack[$stackPos-(1-1)]); + }, + 271 => function ($stackPos) { + $this->semValue = null; + }, + 272 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(3-2)]; + }, 273 => function ($stackPos) { - $this->semValue = 0; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 274 => function ($stackPos) { $this->semValue = 0; }, 275 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = 0; }, 276 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 277 => function ($stackPos) { - $this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)]; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 278 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_PUBLIC; + $this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)]; }, 279 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_PROTECTED; + $this->semValue = Stmt\Class_::MODIFIER_PUBLIC; }, 280 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_PRIVATE; + $this->semValue = Stmt\Class_::MODIFIER_PROTECTED; }, 281 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_STATIC; + $this->semValue = Stmt\Class_::MODIFIER_PRIVATE; }, 282 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; + $this->semValue = Stmt\Class_::MODIFIER_STATIC; }, 283 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_FINAL; + $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; }, 284 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semValue = Stmt\Class_::MODIFIER_FINAL; }, 285 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 286 => function ($stackPos) { - $this->semValue = new Node\VarLikeIdentifier(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, - 287 => function ($stackPos) { - $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, - 288 => function ($stackPos) { - $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 289 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 290 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, + 286 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, + 287 => function ($stackPos) { + $this->semValue = new Node\VarLikeIdentifier(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 288 => function ($stackPos) { + $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 289 => function ($stackPos) { + $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 290 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 291 => function ($stackPos) { - $this->semValue = array(); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 292 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = array(); }, 293 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 294 => function ($stackPos) { - $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 295 => function ($stackPos) { $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 296 => function ($stackPos) { - $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 297 => function ($stackPos) { $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 298 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 299 => function ($stackPos) { - $this->semValue = new Expr\Clone_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 300 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 301 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 302 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 303 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 304 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 305 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 306 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 307 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 308 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 309 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 310 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 311 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 312 => function ($stackPos) { - $this->semValue = new Expr\PostInc($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 313 => function ($stackPos) { - $this->semValue = new Expr\PreInc($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 314 => function ($stackPos) { - $this->semValue = new Expr\PostDec($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 315 => function ($stackPos) { - $this->semValue = new Expr\PreDec($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 316 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 317 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 318 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 319 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 320 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 321 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 322 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 323 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 324 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 325 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 326 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 327 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 328 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 329 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 330 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 331 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 332 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 333 => function ($stackPos) { - $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 334 => function ($stackPos) { - $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 335 => function ($stackPos) { - $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 336 => function ($stackPos) { - $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 337 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 338 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 339 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 340 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 341 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 342 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 343 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 344 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 345 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 346 => function ($stackPos) { - $this->semValue = new Expr\Instanceof_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 347 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 300 => function ($stackPos) { + $this->semValue = new Expr\Clone_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 301 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 302 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 303 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 304 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 305 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 306 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 307 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 308 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 309 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 310 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 311 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 312 => function ($stackPos) { + $this->semValue = new Expr\AssignOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 313 => function ($stackPos) { + $this->semValue = new Expr\PostInc($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 314 => function ($stackPos) { + $this->semValue = new Expr\PreInc($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 315 => function ($stackPos) { + $this->semValue = new Expr\PostDec($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 316 => function ($stackPos) { + $this->semValue = new Expr\PreDec($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 317 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 318 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 319 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 320 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 321 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 322 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 323 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 324 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 325 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 326 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 327 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 328 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 329 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 330 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 331 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 332 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 333 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 334 => function ($stackPos) { + $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 335 => function ($stackPos) { + $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 336 => function ($stackPos) { + $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 337 => function ($stackPos) { + $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 338 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 339 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 340 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 341 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 342 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 343 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 344 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 345 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 346 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 347 => function ($stackPos) { + $this->semValue = new Expr\Instanceof_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, 348 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 349 => function ($stackPos) { - $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 350 => function ($stackPos) { - $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, 351 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 352 => function ($stackPos) { - $this->semValue = new Expr\Isset_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 353 => function ($stackPos) { - $this->semValue = new Expr\Empty_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Isset_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 354 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Empty_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 355 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 356 => function ($stackPos) { - $this->semValue = new Expr\Eval_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 357 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Eval_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 358 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 359 => function ($stackPos) { - $this->semValue = new Expr\Cast\Int_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 360 => function ($stackPos) { - $this->semValue = new Expr\Cast\Double($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Int_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 361 => function ($stackPos) { - $this->semValue = new Expr\Cast\String_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Double($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 362 => function ($stackPos) { - $this->semValue = new Expr\Cast\Array_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\String_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 363 => function ($stackPos) { - $this->semValue = new Expr\Cast\Object_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Array_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 364 => function ($stackPos) { - $this->semValue = new Expr\Cast\Bool_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Object_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 365 => function ($stackPos) { - $this->semValue = new Expr\Cast\Unset_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Bool_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 366 => function ($stackPos) { + $this->semValue = new Expr\Cast\Unset_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 367 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strtolower($this->semStack[$stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE; $this->semValue = new Expr\Exit_($this->semStack[$stackPos-(2-2)], $attrs); }, - 367 => function ($stackPos) { - $this->semValue = new Expr\ErrorSuppress($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, 368 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\ErrorSuppress($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 369 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; @@ -2073,116 +2064,116 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 371 => function ($stackPos) { - $this->semValue = new Expr\ShellExec($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 372 => function ($stackPos) { - $this->semValue = new Expr\Print_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\ShellExec($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 373 => function ($stackPos) { - $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\Print_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 374 => function ($stackPos) { - $this->semValue = new Expr\YieldFrom($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 375 => function ($stackPos) { - $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$stackPos-(10-2)], 'params' => $this->semStack[$stackPos-(10-4)], 'uses' => $this->semStack[$stackPos-(10-6)], 'returnType' => $this->semStack[$stackPos-(10-7)], 'stmts' => $this->semStack[$stackPos-(10-9)]], $this->startAttributeStack[$stackPos-(10-1)] + $this->endAttributes); + $this->semValue = new Expr\YieldFrom($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 376 => function ($stackPos) { - $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$stackPos-(11-3)], 'params' => $this->semStack[$stackPos-(11-5)], 'uses' => $this->semStack[$stackPos-(11-7)], 'returnType' => $this->semStack[$stackPos-(11-8)], 'stmts' => $this->semStack[$stackPos-(11-10)]], $this->startAttributeStack[$stackPos-(11-1)] + $this->endAttributes); + $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$stackPos-(10-2)], 'params' => $this->semStack[$stackPos-(10-4)], 'uses' => $this->semStack[$stackPos-(10-6)], 'returnType' => $this->semStack[$stackPos-(10-7)], 'stmts' => $this->semStack[$stackPos-(10-9)]], $this->startAttributeStack[$stackPos-(10-1)] + $this->endAttributes); }, 377 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$stackPos-(11-3)], 'params' => $this->semStack[$stackPos-(11-5)], 'uses' => $this->semStack[$stackPos-(11-7)], 'returnType' => $this->semStack[$stackPos-(11-8)], 'stmts' => $this->semStack[$stackPos-(11-10)]], $this->startAttributeStack[$stackPos-(11-1)] + $this->endAttributes); }, 378 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 379 => function ($stackPos) { - $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(2-2)], null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 380 => function ($stackPos) { - $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-2)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(2-2)], null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 381 => function ($stackPos) { + $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-2)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, + 382 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_LONG; $this->semValue = new Expr\Array_($this->semStack[$stackPos-(4-3)], $attrs); }, - 382 => function ($stackPos) { + 383 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_SHORT; $this->semValue = new Expr\Array_($this->semStack[$stackPos-(3-2)], $attrs); }, - 383 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, 384 => function ($stackPos) { - $attrs = $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$stackPos-(4-1)][0] === "'" || ($this->semStack[$stackPos-(4-1)][1] === "'" && ($this->semStack[$stackPos-(4-1)][0] === 'b' || $this->semStack[$stackPos-(4-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED); - $this->semValue = new Expr\ArrayDimFetch(new Scalar\String_(Scalar\String_::parse($this->semStack[$stackPos-(4-1)]), $attrs), $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 385 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $attrs = $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$stackPos-(4-1)][0] === "'" || ($this->semStack[$stackPos-(4-1)][1] === "'" && ($this->semStack[$stackPos-(4-1)][0] === 'b' || $this->semStack[$stackPos-(4-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED); + $this->semValue = new Expr\ArrayDimFetch(new Scalar\String_(Scalar\String_::parse($this->semStack[$stackPos-(4-1)]), $attrs), $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 386 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 387 => function ($stackPos) { + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, + 388 => function ($stackPos) { $this->semValue = array(new Stmt\Class_(null, ['type' => 0, 'extends' => $this->semStack[$stackPos-(7-3)], 'implements' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes), $this->semStack[$stackPos-(7-2)]); $this->checkClass($this->semValue[0], -1); }, - 388 => function ($stackPos) { + 389 => function ($stackPos) { $this->semValue = new Expr\New_($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 389 => function ($stackPos) { + 390 => function ($stackPos) { list($class, $ctorArgs) = $this->semStack[$stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 390 => function ($stackPos) { + 391 => function ($stackPos) { $this->semValue = array(); }, - 391 => function ($stackPos) { + 392 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-3)]; }, - 392 => function ($stackPos) { + 393 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 393 => function ($stackPos) { + 394 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 394 => function ($stackPos) { + 395 => function ($stackPos) { $this->semValue = new Expr\ClosureUse($this->semStack[$stackPos-(2-2)], $this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 395 => function ($stackPos) { - $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, 396 => function ($stackPos) { - $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 397 => function ($stackPos) { - $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(6-1)], $this->semStack[$stackPos-(6-4)], $this->semStack[$stackPos-(6-6)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 398 => function ($stackPos) { - $this->semValue = $this->fixupPhp5StaticPropCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(6-1)], $this->semStack[$stackPos-(6-4)], $this->semStack[$stackPos-(6-6)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, 399 => function ($stackPos) { - $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->fixupPhp5StaticPropCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 400 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 401 => function ($stackPos) { - $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 402 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 403 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 403 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 404 => function ($stackPos) { - $this->semValue = new Name\FullyQualified($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 405 => function ($stackPos) { - $this->semValue = new Name\Relative($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Name\FullyQualified($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 406 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Name\Relative($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 407 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; @@ -2200,246 +2191,246 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 412 => function ($stackPos) { - $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 413 => function ($stackPos) { $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 414 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 415 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 416 => function ($stackPos) { - $this->semValue = null; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 417 => function ($stackPos) { $this->semValue = null; }, 418 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = null; }, 419 => function ($stackPos) { - $this->semValue = array(); - }, - 420 => function ($stackPos) { - $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$stackPos-(1-1)], '`', false), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes)); - }, - 421 => function ($stackPos) { - foreach ($this->semStack[$stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', false); } }; $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 422 => function ($stackPos) { - $this->semValue = array(); - }, - 423 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 420 => function ($stackPos) { + $this->semValue = array(); + }, + 421 => function ($stackPos) { + $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$stackPos-(1-1)], '`', false), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes)); + }, + 422 => function ($stackPos) { + foreach ($this->semStack[$stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', false); } }; $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, + 423 => function ($stackPos) { + $this->semValue = array(); + }, 424 => function ($stackPos) { - $this->semValue = $this->parseLNumber($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes, true); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 425 => function ($stackPos) { - $this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$stackPos-(1-1)]), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->parseLNumber($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes, true); }, 426 => function ($stackPos) { + $this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$stackPos-(1-1)]), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 427 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$stackPos-(1-1)][0] === "'" || ($this->semStack[$stackPos-(1-1)][1] === "'" && ($this->semStack[$stackPos-(1-1)][0] === 'b' || $this->semStack[$stackPos-(1-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED); $this->semValue = new Scalar\String_(Scalar\String_::parse($this->semStack[$stackPos-(1-1)], false), $attrs); }, - 427 => function ($stackPos) { + 428 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Line($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 428 => function ($stackPos) { + 429 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\File($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 429 => function ($stackPos) { + 430 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Dir($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 430 => function ($stackPos) { + 431 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Class_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 431 => function ($stackPos) { + 432 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Trait_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 432 => function ($stackPos) { + 433 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Method($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 433 => function ($stackPos) { + 434 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Function_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 434 => function ($stackPos) { + 435 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 435 => function ($stackPos) { + 436 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$stackPos-(3-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_(Scalar\String_::parseDocString($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], false), $attrs); }, - 436 => function ($stackPos) { + 437 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$stackPos-(2-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$stackPos-(2-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_('', $attrs); }, - 437 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, 438 => function ($stackPos) { - $this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 439 => function ($stackPos) { - $this->semValue = new Expr\ConstFetch($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, - 440 => function ($stackPos) { - $this->semValue = new Expr\Array_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 441 => function ($stackPos) { - $this->semValue = new Expr\Array_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 442 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 443 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 444 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 445 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 446 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 447 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 448 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 449 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 450 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 451 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 452 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 453 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 454 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 455 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 456 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 457 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 458 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 459 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 460 => function ($stackPos) { - $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 461 => function ($stackPos) { - $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 462 => function ($stackPos) { - $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 463 => function ($stackPos) { - $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 464 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 465 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 466 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 467 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 468 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 469 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 470 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 471 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 472 => function ($stackPos) { - $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); - }, - 473 => function ($stackPos) { - $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 474 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 475 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; - }, - 476 => function ($stackPos) { - $this->semValue = new Expr\ConstFetch($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, - 477 => function ($stackPos) { $this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 478 => function ($stackPos) { + 440 => function ($stackPos) { + $this->semValue = new Expr\ConstFetch($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 441 => function ($stackPos) { + $this->semValue = new Expr\Array_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, + 442 => function ($stackPos) { + $this->semValue = new Expr\Array_($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 443 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 444 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 445 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 446 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 447 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 448 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 449 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 450 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 451 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 452 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 453 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 454 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 455 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 456 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 457 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 458 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 459 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 460 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 461 => function ($stackPos) { + $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 462 => function ($stackPos) { + $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 463 => function ($stackPos) { + $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 464 => function ($stackPos) { + $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 465 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 466 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 467 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 468 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 469 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 470 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 471 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 472 => function ($stackPos) { + $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 473 => function ($stackPos) { + $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); + }, + 474 => function ($stackPos) { + $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, + 475 => function ($stackPos) { + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, + 476 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(3-2)]; + }, + 477 => function ($stackPos) { + $this->semValue = new Expr\ConstFetch($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 478 => function ($stackPos) { + $this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, 479 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 480 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, + 481 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED; foreach ($this->semStack[$stackPos-(3-2)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '"', true); } }; $this->semValue = new Scalar\Encapsed($this->semStack[$stackPos-(3-2)], $attrs); }, - 481 => function ($stackPos) { + 482 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$stackPos-(3-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; foreach ($this->semStack[$stackPos-(3-2)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, null, true); } } $s->value = preg_replace('~(\r\n|\n|\r)\z~', '', $s->value); if ('' === $s->value) array_pop($this->semStack[$stackPos-(3-2)]);; $this->semValue = new Scalar\Encapsed($this->semStack[$stackPos-(3-2)], $attrs); }, - 482 => function ($stackPos) { + 483 => function ($stackPos) { $this->semValue = array(); }, - 483 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; - }, 484 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos]; + $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 485 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos]; }, 486 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = $this->semStack[$stackPos]; }, 487 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 488 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 489 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 490 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 491 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; @@ -2451,61 +2442,61 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 494 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-5)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 495 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-5)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, 496 => function ($stackPos) { - $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 497 => function ($stackPos) { - $this->semValue = new Expr\MethodCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 498 => function ($stackPos) { - $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\MethodCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 499 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 500 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 501 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 502 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 503 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 504 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 505 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 506 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 507 => function ($stackPos) { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 508 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 508 => function ($stackPos) { + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, 509 => function ($stackPos) { - $var = substr($this->semStack[$stackPos-(1-1)], 1); $this->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes) : $var; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 510 => function ($stackPos) { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $var = substr($this->semStack[$stackPos-(1-1)], 1); $this->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes) : $var; }, 511 => function ($stackPos) { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(6-1)], $this->semStack[$stackPos-(6-5)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 512 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(6-1)], $this->semStack[$stackPos-(6-5)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, 513 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); @@ -2517,117 +2508,120 @@ class Php5 extends \PhpParser\ParserAbstract $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 516 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 517 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 518 => function ($stackPos) { - $this->semValue = null; + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 519 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = null; }, 520 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 521 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; - }, - 522 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 522 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(3-2)]; + }, 523 => function ($stackPos) { - $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 524 => function ($stackPos) { - $this->semValue = new Expr\List_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; }, 525 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = new Expr\List_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 526 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 527 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 528 => function ($stackPos) { $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 529 => function ($stackPos) { - $this->semValue = null; - }, - 530 => function ($stackPos) { - $this->semValue = array(); - }, - 531 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; - }, - 532 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 533 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 534 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 535 => function ($stackPos) { $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 530 => function ($stackPos) { + $this->semValue = null; + }, + 531 => function ($stackPos) { + $this->semValue = array(); + }, + 532 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(2-1)]; + }, + 533 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, + 534 => function ($stackPos) { + $this->semValue = array($this->semStack[$stackPos-(1-1)]); + }, + 535 => function ($stackPos) { + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, 536 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-1)], true, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 537 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(2-2)], null, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-1)], true, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 538 => function ($stackPos) { - $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(2-2)], null, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 539 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 540 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 541 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 542 => function ($stackPos) { - $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); }, 543 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 544 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 545 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 546 => function ($stackPos) { - $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 547 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 548 => function ($stackPos) { $this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 549 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-4)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 550 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-4)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, 551 => function ($stackPos) { - $this->semValue = new Scalar\String_($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 552 => function ($stackPos) { - $this->semValue = $this->parseNumString($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\String_($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 553 => function ($stackPos) { + $this->semValue = $this->parseNumString($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 554 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, ]; diff --git a/lib/PhpParser/Parser/Php7.php b/lib/PhpParser/Parser/Php7.php index 9bd84fc..24ce4d1 100644 --- a/lib/PhpParser/Parser/Php7.php +++ b/lib/PhpParser/Parser/Php7.php @@ -18,16 +18,16 @@ use PhpParser\Node\Stmt; class Php7 extends \PhpParser\ParserAbstract { protected $tokenToSymbolMapSize = 392; - protected $actionTableSize = 952; - protected $gotoTableSize = 489; + protected $actionTableSize = 940; + protected $gotoTableSize = 486; protected $invalidSymbol = 157; protected $errorSymbol = 1; protected $defaultAction = -32766; protected $unexpectedTokenRule = 32767; - protected $YY2TBLSTATE = 339; - protected $numNonLeafStates = 580; + protected $YY2TBLSTATE = 336; + protected $numNonLeafStates = 581; protected $symbolToName = array( "EOF", @@ -233,264 +233,260 @@ class Php7 extends \PhpParser\ParserAbstract ); protected $action = array( - 585, 586, 587, 588, 589, 218, 590, 591, 592, 628, - 629, 492, 32, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113,-32766,-32766,-32766, 98, 99, - 100, 376, 244, 489, 556,-32766,-32766,-32766, 664, 855, - 1097, 662, 0, 1098, 101,-32766, 823,-32766,-32766,-32766, - -32766,-32766, 593, 912, 914,-32766, 359,-32766,-32766,-32766, - -32766,-32766,-32766, -491, 253, 669, 594, 595, 596, 597, - 598, 599, 600, 431, 253, 660, 879, 880, 881, 878, - 877, 876, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 631, 632, 633, 634, 635, 623, 624, - 625, 626, 627, 612, 613, 614, 615, 616, 617, 618, - 654, 655, 656, 657, 658, 659, 619, 620, 621, 622, - 652, 643, 641, 642, 638, 639, 217, 630, 636, 637, - 644, 645, 647, 646, 648, 649, 45, 46, 408, 47, - 48, 640, 651, 650, -233, 49, 50, 263, 51, 253, - 879, 880, 881, 878, 877, 876, 871,-32767,-32767,-32767, - -32767, 93, 94, 95, 96, 97, 827, 828,-32766,-32766, - -32766, 685, 686, 117, -451, 995, 827, 828, -292, -292, - 231, 52, 53, 667, -292, -292, 1088, 54, -91, 55, - 226, 227, 56, 57, 58, 59, 60, 61, 62, 63, - -452, 25, 237, 64, 360,-32766,-32766,-32766, -491, 1012, - 1013, 410, 668, 1045, -487, 349, 9, 1011,-32766,-32766, - -32766, 745, 664,-32766,-32766,-32766, 976,-32766,-32766,-32766, - -32766, 1076, 766, 24, 664, -451, 368, 1075,-32766, 119, - -32766,-32766,-32766, -177, 28, 229, 294, 528, 529, -451, - 357, 827, 828, 1045, 420, 421, -451, 431, -454,-32766, - 995, -452, 269, 422, 423, 1063, 1017, 1018, 1019, 1020, - 1014, 1015, 248, -238, -450, -452, 234, 432, 1021, 1016, - 365, 122, -452, 1048, -455, 66, 988, 260, 33, 265, - 270, 409, -136, -136, -136, -4, 745, 354, 763,-32766, - 432, 734, 25, 365, 37, 20, 411, -136, 412, -136, - 413, -136, 414, -136, 1045, 415, 232, 245, 1011, 38, - 39, 361, 362, 382, 40, 416, 268, 1007, 65, 664, - 270, 293, 454, 417, 418, -450, -258, 391, 1045, 419, - 799, 662, 720, 768, 363, 364, 280, 988, 295, -450, - 44, 219,-32766,-32766,-32766, 298, -450, 302, 664, -487, - -450, 539, -488, 247, 431, 423, 409, 745, 747, 554, - -136, 988,-32766, 131,-32766,-32766, 734, -290, 235, 37, - 20, 411, -494, 412, -494, 413, 68, 414, -177, 1025, - 415, 270, 236, 431, 38, 39, 361, 362, 345, 40, - 416, -292, -292, 65, 259, 1045, 293,-32766, 417, 418, - 25, 252, 353, 125, 419, 270,-32766, 677, 768, 363, - 364, -450, 1045, 42, 25, 297, 1011, 540, 123, -176, - 365, 74, 118, 833, 857, -450, 1045, 409, 282, 745, - 1011, 232, -450, 747, 554, -4, 563, 734, 1045, 767, - 37, 20, 411, 356, 412, 988, 413, 392, 414, 800, - 358, 415, -217, -217, -217, 38, 39, 361, 362, 988, - 40, 416, 422, 423, 65, 124, 564, 293, 30, 417, - 418, -258, 270, 664, 251, 419, 422, 423, 720, 768, - 363, 364, 664, 477, 68, -490, -292, -292, 121, 270, - -32766,-32766,-32766, 230, 133, 116, 134, -488, 68, 409, - -32766,-32766,-32766, 270, 747, 554, -217, 284, 431, 734, - -32766, 120, 37, 20, 411, 270, 412, 431, 413, 127, - 414, 516, 21, 415, -218, -218, -218, 38, 39, 361, - 362, 115, 40, 416, 765, 664, 65, 114, 745, 293, - -82, 417, 418, 123, 95, 96, 97, 419, 130, 320, - 720, 768, 363, 364, 685, 686, 401, 8, 129, 75, - 76, 77, 509, 510, -176, 567, 558, 228, 744, 233, - 431, 827, 828, 856, 577, 759, 747, 554, -218, 31, - 244, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 586, 587, 588, 589, 590, 218, 591, 592, 593, 629, + 630, 665, 32, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113,-32766,-32766,-32766, 881, 882, + 883, 880, 879, 878, 0,-32766,-32766,-32766,-32766,-32766, + -32766, 663, 824, 117, 24,-32766, 428,-32766,-32766,-32766, + -32766,-32766, 594, 914, 916,-32766, 9,-32766,-32766,-32766, + -32766,-32766,-32766, 857, 250, 350, 595, 596, 597, 598, + 599, 600, 601, 119, 250, 661, 881, 882, 883, 880, + 879, 878, 602, 603, 604, 605, 606, 607, 608, 609, + 610, 611, 612, 632, 633, 634, 635, 636, 624, 625, + 626, 627, 628, 613, 614, 615, 616, 617, 618, 619, + 655, 656, 657, 658, 659, 660, 620, 621, 622, 623, + 653, 644, 642, 643, 639, 640, 800, 631, 637, 638, + 645, 646, 648, 647, 649, 650, 45, 46, 405, 47, + 48, 641, 652, 651, -233, 49, 50, 231, 51,-32767, + -32767,-32767,-32767, 93, 94, 95, 96, 97,-32766,-32766, + -32766, 42, -451, 25, -293, -293, 828, 829, 98, 99, + 100, 260, 241, 230, -453, 1047, 828, 829,-32766, 1013, + 873, 52, 53, 486, 101, 670, 242, 54, -238, 55, + 223, 224, 56, 57, 58, 59, 60, 61, 62, 63, + -452, 25, 234, 64, 357,-32766,-32766,-32766, 990, 1014, + 1015, 407, -271, 1047, -488, 665, 265, 1013,-32766,-32766, + -32766, 746, 248, -451, 250,-32766, 420,-32766,-32766,-32766, + -32766, 388, -258, 1078, 277, -453, 365, -451,-32766, 1077, + -32766,-32766,-32766, 116, -451, 801, 291, 68, 665, -453, + 428, 292, 267, 1065, 417, 418, -453, -489, -456, 373, + 997, -452, 557, 419, 420, 1050, 1019, 1020, 1021, 1022, + 1016, 1017, 245, 764, -451, -452, 217, 429, 1023, 1018, + 362, 295, -452, 1047, -455, 66, 1009, 257,-32766, 262, + 267, 406, -136, -136, -136, -4, 746, 686, 687, 299, + 668, 735, 266, 1090, 37, 20, 408, -136, 409, -136, + 410, -136, 411, -136, 429, 412, 229, 362, 490, 38, + 39, 358, 359, 355, 40, 413, 828, 829, 65, 663, + 44, 290, 669, 414, 415, -451, -492, 33, 1047, 416, + 122, 346, 721, 769, 360, 361, 353, 1099, -91, -451, + 1100, 389,-32766,-32766,-32766, 354, -451, 121, 665, -488, + 267, 28, 226, 379, 1047, 228, 406, 746, 748, 555, + -136, 990,-32766, 219,-32766,-32766, 735, -258, 233, 37, + 20, 408, 351, 409, -495, 410, -495, 411, 665, 451, + 412, 249, 232, 428, 38, 39, 358, 359, 342, 40, + 413, 125, -489, 65, 256, 294, 290, 665, 414, 415, + 25, 30, 118, 74, 416, 267, 356, 678, 769, 360, + 361, 568, 1047, 428, 25, 127, 1013, 540, 123,-32766, + -32766,-32766, -176, 834, 124, -177, 1047, 406, 279, 746, + 1013, 267, 428, 748, 555, -4, 1027, 735, 665, 474, + 37, 20, 408, 281, 409, 990, 410, 115, 411,-32766, + -32766, 412, -218, -218, -218, 38, 39, 358, 359, 990, + 40, 413, 419, 420, 65, -491, 225, 290, 229, 414, + 415, -492, 569, 428, 114, 416, 419, 420, 721, 769, + 360, 361, 131, 541, 68, 133, 362, 130, 317, 267, + 859, 134, 227, 529, 530, 997, 517, 21, 68, 406, + 95, 96, 97, 267, 748, 555, -218, 120, 665, 735, + 665, 129, 37, 20, 408, 745, 409, 244, 410, -82, + 411, 686, 687, 412, -217, -217, -217, 38, 39, 358, + 359, 572, 40, 413, 665, 760, 65, 241, 746, 290, + 101, 414, 415, 428, 43, 428, 1066, 416, 398, 8, + 721, 769, 360, 361, 508, 509, 828, 829, 128, 75, + 76, 77, 858, 578, 665, 1101, 570, -176, -291, 428, + -177, 537, 666, 1047, 523, 663, 748, 555, -217, 31, + 123, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 244, 885, 745, 409, 664, - 128, 664, 43, 1064, 667, 536, 463, 101, 734, 664, - 517, 37, 20, 411, 662, 412, 665, 413, 1099, 414, - -490, 264, 415, 548, 458, 559, 38, 39, 361, 745, - -32766, 40, 416, 522, 431, 65, 431, 531, 293, 10, - 523, 380, 262, -80, 769, 373, 419, 532, 988, 1027, - 296, 12, 1024, 351, 555, 34, -409, 560, 1026, 508, - 5, 0, 0, 0, 0, 0, 0, 409, 0, 0, - 0, 0, 0, 0, 0, 747, 554, 734, 770, 267, - 37, 20, 411, 261, 412, 0, 413, 0, 414, 0, - 0, 415, 0, 0, 0, 38, 39, 361, 745, 409, - 40, 416, 460, 344, 65, 376, 338, 293, 334, 734, - 327, 333, 37, 20, 411, 419, 412, 350, 413, 761, - 414, 868, 862, 415, 36, 786, 561, 38, 39, 361, - 745, 575, 40, 416, 802, 851, 65, 576, 725, 293, - 861, 864, 863, 860, 747, 554, 781, 419, 723, 794, - 783, 852, 793, 35, 0, 343, 279, 278, 565, 562, - 566, 573, 572, 570, 568, 557, 0, 791, 409, 745, - 792, 721, 1094, 1096, 680, 679, 785, 554, 734, 689, - 690, 37, 20, 411, 687, 412, 1095, 413, 688, 414, - 754, 1093, 415, 1046, 1039, 1053, 38, 39, 361, 1058, - 409, 40, 416, 1061, 752, 65, 762, 569, 293, 27, - 734, 26, 23, 37, 20, 411, 419, 412, -453, 413, - -454, 414, 240, -455, 415, -477, -479, 41, 38, 39, - 361, 348, 346, 40, 416, 281, 243, 65, 242, 409, - 293, 241, 225, 224, 135, 747, 554, 132, 419, 734, - 126, 73, 37, 20, 411, 72, 412, 71, 413, 70, - 414, 69, 67, 415, 952, 955, 547, 38, 39, 361, - -234, 487, 40, 416, 316, 255, 65, 747, 554, 293, - -32766,-32766,-32766, 22, 18, 13, -236, 419, 980, 834, - 1009, 951, 999, 545, 406, 399, 397, 393, 317, -91, - -32766, 19,-32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767, - -32767,-32767,-32767, 17, 16, 15, 747, 554, 14, -233, - 0, 504, 0, 968, -421, 0, 515, 1008, 1091, 1052, - 1038, 1037 + 97, 98, 99, 100, 887, 241, 990, 746, 406, 668, + -491, 455, 460,-32766, 518, 532, -80, 101, 735, 533, + 370, 37, 20, 408, 549, 409, 377, 410, 10, 411, + 507, 990, 412, 770, 524, 566, 38, 39, 358, 746, + 771, 40, 413, 261, 1029, 65, 264, 1026, 290, 12, + 267, 293, 373, -410, 258, 5, 416, 970, 347, 0, + 335, 348, 331, 259, 0, 0, 0, 563, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 406, 0, 0, + 0, 0, 0, 0, 0, 748, 555, 735, 330, 324, + 37, 20, 408, 457, 409, 762, 410, 853, 411, 556, + 870, 412, 726, 577, 36, 38, 39, 358, 746, 406, + 40, 413, 35, 576, 65, 803, 863, 290, 866, 735, + 787, 865, 37, 20, 408, 416, 409, 862, 410, 782, + 411, 724, 795, 412, 784, 854, 561, 38, 39, 358, + 746, 794, 40, 413, 864, 793, 65, 558, 341, 290, + 340, 560, 276, 275, 748, 555, 571, 416, 567, 565, + 564, 559, 514, 792, 753, 763, 755, 689, 562, 978, + 766, 1097, 1048, 722, 1096, 1098, 681, 768, 406, 746, + 680, 690, 767, 691, 688, 1095, 786, 555, 735, 1063, + 1041, 37, 20, 408, 1055, 409, 1060, 410, 573, 411, + 41, 34, 412, 27, 26, 23, 38, 39, 358, -454, + 406, 40, 413, -455, -456, 65, -478, -480, 290, 237, + 735, 345, 343, 37, 20, 408, 416, 409, 278, 410, + 240, 411, 239, 238, 412, 222, 221, 135, 38, 39, + 358, 132, 126, 40, 413, 73, 72, 65, 71, 406, + 290, 70, 69, 67, 1028, 748, 555, 954, 416, 735, + 957, 548, 37, 20, 408, 503, 409, 484, 410, 313, + 411, 252, 22, 412, 18, 13, -236, 38, 39, 358, + 982, 835, 40, 413, 1011, 953, 65, 748, 555, 290, + -32766,-32766,-32766, 1001, 546, 403, 396, 416, 394, 390, + 314, 19, 17, 16, -91, 15, 14, -233, -234, 0, + -32766, -422,-32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767, + -32767,-32767,-32767, 1010, 1093, 1054, 748, 555, 1040, 1039 ); protected $actionCheck = array( 2, 3, 4, 5, 6, 13, 8, 9, 10, 11, - 12, 48, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 8, 9, 10, 50, 51, - 52, 146, 54, 1, 149, 8, 9, 10, 77, 1, - 77, 77, 0, 80, 66, 28, 1, 30, 31, 32, + 12, 77, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 8, 9, 10, 112, 113, + 114, 115, 116, 117, 0, 8, 9, 10, 8, 9, + 10, 77, 1, 13, 7, 28, 112, 30, 31, 32, 33, 34, 54, 56, 57, 28, 7, 30, 31, 32, - 33, 34, 35, 7, 28, 1, 68, 69, 70, 71, - 72, 73, 74, 112, 28, 77, 112, 113, 114, 115, + 33, 34, 35, 1, 28, 7, 68, 69, 70, 71, + 72, 73, 74, 7, 28, 77, 112, 113, 114, 115, 116, 117, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 94, 129, 130, 131, + 122, 123, 124, 125, 126, 127, 29, 129, 130, 131, 132, 133, 134, 135, 136, 137, 2, 3, 4, 5, - 6, 143, 144, 145, 152, 11, 12, 109, 14, 28, - 112, 113, 114, 115, 116, 117, 118, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 130, 131, 8, 9, - 10, 102, 103, 13, 67, 1, 130, 131, 102, 103, - 35, 47, 48, 79, 102, 103, 82, 53, 152, 55, + 6, 143, 144, 145, 152, 11, 12, 7, 14, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 8, 9, + 10, 67, 67, 67, 102, 103, 130, 131, 50, 51, + 52, 109, 54, 35, 67, 79, 130, 131, 28, 83, + 118, 47, 48, 1, 66, 1, 7, 53, 152, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 67, 67, 68, 69, 70, 8, 9, 10, 152, 75, - 76, 77, 148, 79, 7, 146, 7, 83, 8, 9, - 10, 1, 77, 8, 9, 28, 150, 30, 31, 32, - 33, 1, 150, 7, 77, 128, 102, 7, 28, 7, - 30, 31, 32, 7, 140, 141, 112, 72, 73, 142, - 7, 130, 131, 79, 120, 121, 149, 112, 151, 8, - 1, 128, 67, 129, 130, 1, 132, 133, 134, 135, - 136, 137, 138, 152, 67, 142, 7, 143, 144, 145, - 146, 29, 149, 1, 151, 151, 112, 153, 13, 155, - 156, 71, 72, 73, 74, 0, 1, 123, 1, 1, - 143, 81, 67, 146, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 79, 95, 35, 7, 83, 99, - 100, 101, 102, 128, 104, 105, 7, 1, 108, 77, - 156, 111, 82, 113, 114, 128, 7, 29, 79, 119, - 29, 77, 122, 123, 124, 125, 7, 112, 7, 142, - 67, 13, 8, 9, 10, 7, 149, 7, 77, 152, - 67, 77, 7, 29, 112, 130, 71, 1, 148, 149, - 150, 112, 28, 15, 30, 31, 81, 79, 35, 84, - 85, 86, 152, 88, 154, 90, 151, 92, 152, 139, - 95, 156, 35, 112, 99, 100, 101, 102, 103, 104, - 105, 102, 103, 108, 109, 79, 111, 109, 113, 114, - 67, 128, 7, 149, 119, 156, 118, 122, 123, 124, - 125, 128, 79, 67, 67, 142, 83, 143, 147, 7, - 146, 149, 149, 152, 150, 142, 79, 71, 143, 1, - 83, 35, 149, 148, 149, 150, 149, 81, 79, 150, - 84, 85, 86, 7, 88, 112, 90, 149, 92, 148, - 7, 95, 96, 97, 98, 99, 100, 101, 102, 112, - 104, 105, 129, 130, 108, 149, 29, 111, 7, 113, - 114, 152, 156, 77, 128, 119, 129, 130, 122, 123, - 124, 125, 77, 78, 151, 7, 102, 103, 15, 156, - 8, 9, 10, 35, 15, 149, 15, 152, 151, 71, - 8, 9, 10, 156, 148, 149, 150, 33, 112, 81, - 28, 15, 84, 85, 86, 156, 88, 112, 90, 15, - 92, 72, 73, 95, 96, 97, 98, 99, 100, 101, - 102, 15, 104, 105, 150, 77, 108, 15, 1, 111, - 29, 113, 114, 147, 47, 48, 49, 119, 97, 98, - 122, 123, 124, 125, 102, 103, 102, 103, 29, 8, - 9, 10, 106, 107, 152, 29, 29, 35, 29, 35, - 112, 130, 131, 148, 149, 35, 148, 149, 150, 28, - 54, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 67, 67, 68, 69, 70, 8, 9, 10, 112, 75, + 76, 77, 150, 79, 7, 77, 7, 83, 8, 9, + 10, 1, 128, 128, 28, 28, 130, 30, 31, 32, + 33, 29, 7, 1, 7, 128, 102, 142, 28, 7, + 30, 31, 32, 149, 149, 148, 112, 151, 77, 142, + 112, 7, 156, 1, 120, 121, 149, 7, 151, 146, + 1, 128, 149, 129, 130, 1, 132, 133, 134, 135, + 136, 137, 138, 1, 67, 142, 94, 143, 144, 145, + 146, 7, 149, 79, 151, 151, 1, 153, 8, 155, + 156, 71, 72, 73, 74, 0, 1, 102, 103, 7, + 79, 81, 67, 82, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 143, 95, 35, 146, 48, 99, + 100, 101, 102, 7, 104, 105, 130, 131, 108, 77, + 67, 111, 148, 113, 114, 128, 7, 13, 79, 119, + 29, 146, 122, 123, 124, 125, 7, 77, 152, 142, + 80, 149, 8, 9, 10, 7, 149, 15, 77, 152, + 156, 140, 141, 128, 79, 35, 71, 1, 148, 149, + 150, 112, 28, 13, 30, 31, 81, 152, 35, 84, + 85, 86, 123, 88, 152, 90, 154, 92, 77, 82, + 95, 128, 35, 112, 99, 100, 101, 102, 103, 104, + 105, 149, 152, 108, 109, 142, 111, 77, 113, 114, + 67, 7, 149, 149, 119, 156, 7, 122, 123, 124, + 125, 149, 79, 112, 67, 15, 83, 77, 147, 8, + 9, 10, 7, 152, 149, 7, 79, 71, 143, 1, + 83, 156, 112, 148, 149, 150, 139, 81, 77, 78, + 84, 85, 86, 33, 88, 112, 90, 15, 92, 8, + 9, 95, 96, 97, 98, 99, 100, 101, 102, 112, + 104, 105, 129, 130, 108, 7, 35, 111, 35, 113, + 114, 152, 29, 112, 15, 119, 129, 130, 122, 123, + 124, 125, 15, 143, 151, 15, 146, 97, 98, 156, + 150, 15, 35, 72, 73, 1, 72, 73, 151, 71, + 47, 48, 49, 156, 148, 149, 150, 15, 77, 81, + 77, 29, 84, 85, 86, 29, 88, 29, 90, 29, + 92, 102, 103, 95, 96, 97, 98, 99, 100, 101, + 102, 29, 104, 105, 77, 35, 108, 54, 1, 111, + 66, 113, 114, 112, 67, 112, 152, 119, 102, 103, + 122, 123, 124, 125, 106, 107, 130, 131, 67, 8, + 9, 10, 148, 149, 77, 80, 29, 152, 79, 112, + 152, 74, 77, 79, 93, 77, 148, 149, 150, 28, + 147, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 66, 54, 79, 1, 71, 77, - 67, 77, 67, 152, 79, 74, 86, 66, 81, 77, - 87, 84, 85, 86, 77, 88, 77, 90, 80, 92, - 152, 110, 95, 89, 82, 29, 99, 100, 101, 1, - 82, 104, 105, 93, 112, 108, 112, 91, 111, 94, - 96, 94, 127, 94, 123, 102, 119, 96, 112, 139, - 142, 142, 139, 146, 149, 151, 142, 29, 155, 109, - 142, -1, -1, -1, -1, -1, -1, 71, -1, -1, - -1, -1, -1, -1, -1, 148, 149, 81, 123, 126, - 84, 85, 86, 126, 88, -1, 90, -1, 92, -1, - -1, 95, -1, -1, -1, 99, 100, 101, 1, 71, - 104, 105, 146, 149, 108, 146, 146, 111, 146, 81, - 146, 146, 84, 85, 86, 119, 88, 146, 90, 147, + 49, 50, 51, 52, 79, 54, 112, 1, 71, 79, + 152, 82, 86, 82, 87, 91, 94, 66, 81, 96, + 102, 84, 85, 86, 89, 88, 94, 90, 94, 92, + 109, 112, 95, 123, 96, 29, 99, 100, 101, 1, + 123, 104, 105, 110, 139, 108, 126, 139, 111, 142, + 156, 142, 146, 142, 126, 142, 119, 153, 146, -1, + 146, 146, 146, 127, -1, -1, -1, 29, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 71, -1, -1, + -1, -1, -1, -1, -1, 148, 149, 81, 146, 146, + 84, 85, 86, 146, 88, 147, 90, 148, 92, 149, + 148, 95, 148, 148, 148, 99, 100, 101, 1, 71, + 104, 105, 148, 148, 108, 148, 148, 111, 148, 81, + 148, 148, 84, 85, 86, 119, 88, 148, 90, 148, 92, 148, 148, 95, 148, 148, 29, 99, 100, 101, - 1, 148, 104, 105, 148, 148, 108, 148, 148, 111, - 148, 148, 148, 148, 148, 149, 148, 119, 148, 148, - 148, 148, 148, 148, -1, 149, 149, 149, 29, 149, - 149, 149, 149, 149, 149, 149, -1, 150, 71, 1, + 1, 148, 104, 105, 148, 150, 108, 149, 149, 111, + 149, 149, 149, 149, 148, 149, 149, 119, 149, 149, + 149, 149, 154, 150, 150, 150, 150, 150, 29, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 71, 1, 150, 150, 150, 150, 150, 150, 148, 149, 81, 150, 150, 84, 85, 86, 150, 88, 150, 90, 150, 92, - 150, 150, 95, 150, 150, 150, 99, 100, 101, 150, - 71, 104, 105, 150, 150, 108, 150, 150, 111, 151, + 151, 151, 95, 151, 151, 151, 99, 100, 101, 151, + 71, 104, 105, 151, 151, 108, 151, 151, 111, 151, 81, 151, 151, 84, 85, 86, 119, 88, 151, 90, 151, 92, 151, 151, 95, 151, 151, 151, 99, 100, 101, 151, 151, 104, 105, 151, 151, 108, 151, 71, - 111, 151, 151, 151, 151, 148, 149, 151, 119, 81, - 151, 151, 84, 85, 86, 151, 88, 151, 90, 151, - 92, 151, 151, 95, 152, 152, 152, 99, 100, 101, + 111, 151, 151, 151, 155, 148, 149, 152, 119, 81, + 152, 152, 84, 85, 86, 152, 88, 152, 90, 152, + 92, 152, 152, 95, 152, 152, 152, 99, 100, 101, 152, 152, 104, 105, 152, 152, 108, 148, 149, 111, 8, 9, 10, 152, 152, 152, 152, 119, 152, 152, - 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, - 28, 152, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 152, 152, 152, 148, 149, 152, 152, - -1, 152, -1, 153, 153, -1, 154, 154, 154, 154, - 154, 154 + 152, 152, 152, 152, 152, 152, 152, 152, 152, -1, + 28, 153, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 154, 154, 154, 148, 149, 154, 154 ); protected $actionBase = array( - 0, 220, 295, 438, 366, 326, 284, 594, -2, -2, - -36, -2, -2, 616, 717, 717, 749, 717, 547, 648, - 788, 788, 788, 281, 406, 542, 542, 468, 415, 542, - 468, 252, 145, 544, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, - -39, -39, -39, -39, -39, -39, 64, 64, 311, 32, - 275, 743, 733, 739, 752, 753, 742, 732, 338, 661, - 663, 539, 664, 665, 669, 673, 789, 792, 751, 734, + 0, 220, 295, 366, 438, 285, 350, 606, -2, -2, + -36, -2, -2, 749, 616, 616, 547, 616, 717, 648, + 788, 788, 788, 281, 443, 441, 441, 467, 371, 441, + 467, 311, 330, 138, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, + -66, -66, -66, -66, -66, -66, 184, 184, 97, 182, + 324, 729, 718, 725, 732, 733, 727, 715, 360, 645, + 632, 492, 650, 654, 656, 649, 723, 618, 730, 719, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, - 561, 561, 561, 561, 561, 561, 251, 160, 215, 502, - 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, - 502, 502, 502, 502, 502, 502, 502, 502, 492, 492, - 492, 344, 210, 207, 197, 17, 293, 27, 892, 892, - 892, 892, 892, 116, 116, 116, 116, 343, 343, 357, - 299, 82, 394, 76, 235, 235, 235, 235, 235, 235, - 235, 235, 235, 235, 235, 235, 235, 174, 507, 507, - 121, 121, 121, 121, 259, 36, 298, 46, 250, 530, - 523, 264, 264, 451, 133, 107, -22, -22, -22, 69, - 562, 556, 556, 556, 556, 104, 104, 556, 556, -37, - 282, 230, 293, 293, 283, 293, 293, 293, 462, 462, - 462, 157, -115, 568, 157, 593, 636, 564, 637, 571, - 640, 356, 591, 369, 563, 527, 369, 369, 369, 466, - 459, 175, 767, 64, 534, 64, 64, 64, 64, 691, - 64, 64, 64, 64, 64, 64, 308, 64, 45, 435, - 311, 297, 297, 484, 297, 536, 195, 628, 422, 471, - 536, 536, 536, 627, 626, 355, 329, -8, 574, 236, - 464, 488, 56, 552, 552, 557, 557, 537, 550, 552, - 552, 552, 552, 552, 681, 681, 557, 545, 557, 537, - 696, 557, 550, 557, 557, 552, 557, 681, 550, 232, - 446, 341, 348, 550, 243, 577, 552, 573, 573, 453, - 557, 269, 557, 226, 535, 681, 681, 535, 310, 550, - 319, 603, 609, 570, 592, 339, 334, 334, 405, 570, - 49, 550, 334, 209, 545, 350, 334, 42, 731, 730, - 521, 728, 524, 726, 701, 724, 525, 541, 575, 712, - 711, 720, 678, 680, 549, 576, 532, 526, 538, 555, - 687, 563, 579, 548, 548, 548, 555, 692, 548, 548, - 548, 548, 548, 548, 548, 548, 793, 528, 540, 506, - 584, 567, 483, 635, 533, 576, 576, 641, 791, 790, - 559, 691, 760, 719, 625, 514, 769, 710, 677, 585, - 582, 707, 766, 759, 634, 532, 758, 642, 553, 643, - 576, 644, 548, 694, 695, 797, 796, 689, 795, 786, - 765, 580, 558, 794, 645, 757, 633, 632, 596, 783, - 754, 764, 649, 763, 610, 543, 738, 560, 700, 704, - 630, 650, 654, 607, 358, 656, 716, 606, 782, 566, - 781, 787, 597, 624, 489, 658, 491, 623, 713, 447, - 551, 622, 621, 756, 660, 705, 620, 676, 761, 569, - 579, 529, 531, 565, 554, 631, 762, 546, 618, 615, - 614, 613, 674, 612, 0, 0, 0, 0, 0, 0, + 561, 561, 561, 561, 561, 561, 280, 30, 451, 421, + 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, + 421, 421, 421, 421, 421, 421, 421, 421, 150, 150, + 150, 344, 210, 207, 197, 17, 95, 27, 892, 892, + 892, 892, 892, 108, 108, 108, 108, 357, 357, 343, + 62, 96, 96, 96, 96, 96, 96, 96, 96, 96, + 96, 96, 96, 96, 259, 463, 463, 36, 36, 36, + 36, 504, 196, 499, 46, 307, 515, 709, 252, 252, + 436, 107, 133, 118, 118, 118, 195, 539, 529, 529, + 529, 529, 221, 221, 529, 529, 270, 264, 232, 95, + 95, 263, 95, 95, 95, 429, 429, 429, 171, 113, + 541, 171, 562, 622, 548, 623, 533, 605, 94, 522, + 204, 528, 525, 204, 204, 204, 458, 434, 431, 762, + 184, 521, 184, 184, 184, 184, 678, 184, 184, 184, + 184, 184, 184, 202, 184, 41, 424, 97, 272, 272, + 420, 272, 493, 235, 614, 425, 404, 493, 493, 493, + 613, 611, 250, 225, -8, 609, 428, 456, 468, 329, + 497, 497, 508, 508, 535, 510, 497, 497, 497, 497, + 497, 664, 664, 508, 540, 508, 535, 659, 508, 510, + 508, 508, 497, 508, 664, 510, 66, 339, 244, 274, + 510, 348, 538, 497, 530, 530, 316, 508, 140, 508, + 37, 546, 664, 664, 546, 179, 510, 209, 575, 565, + 531, 558, 227, 498, 498, 58, 531, 409, 510, 498, + 49, 540, 292, 498, 34, 712, 711, 500, 710, 660, + 707, 681, 705, 560, 520, 527, 695, 694, 704, 662, + 663, 496, 557, 469, 442, 523, 487, 668, 528, 516, + 484, 484, 484, 487, 673, 484, 484, 484, 484, 484, + 484, 484, 484, 779, 519, 536, 502, 553, 542, 342, + 608, 518, 557, 557, 633, 768, 514, 505, 678, 751, + 701, 574, 410, 759, 692, 658, 552, 526, 691, 758, + 743, 612, 469, 742, 634, 501, 635, 557, 636, 484, + 675, 676, 785, 784, 672, 781, 764, 757, 524, 637, + 495, 780, 640, 739, 621, 620, 566, 763, 734, 756, + 641, 754, 642, 564, 537, 766, 491, 680, 687, 619, + 643, 644, 559, 477, 631, 630, 629, 700, 577, 761, + 534, 760, 765, 582, 603, 480, 627, 486, 597, 696, + 453, 507, 596, 594, 738, 626, 689, 593, 625, 752, + 532, 516, 517, 543, 544, 545, 617, 753, 512, 591, + 589, 583, 580, 624, 578, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 134, 134, 134, 134, -2, -2, -2, 0, 0, - -2, 0, 0, 134, 134, 134, 134, 134, 134, 134, + 0, 0, 134, 134, 134, 134, -2, -2, -2, 0, + 0, -2, 0, 0, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, @@ -502,36 +498,36 @@ class Php7 extends \PhpParser\ParserAbstract 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, - 134, 134, 134, 134, 134, 134, 561, 561, 561, 561, + 134, 134, 134, 134, 134, 134, 134, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 561, 561, 561, 561, + 561, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, - 561, 561, 561, -3, 561, 561, -3, 561, 561, 561, - 561, 561, 561, -22, -22, -22, -22, 157, 157, 157, - 38, 38, 38, 38, 157, 157, 157, 157, 157, 157, - 157, 157, 157, 157, 157, 157, 157, 157, -22, -22, - 157, 157, 157, 157, 157, 157, 38, 157, 104, 104, - 104, 369, 369, 157, 0, 0, 0, 0, 0, 552, - 104, 157, 157, 157, 157, 0, 0, 157, 157, 545, - 369, 0, 0, 0, 0, 0, 0, 0, 552, 552, - 552, 0, 552, 104, 0, 297, 64, 461, 461, 461, - 461, 0, 552, 0, 545, 552, 0, 0, 0, 0, - 0, 0, 550, 0, 681, 0, 0, 0, 0, 557, - 0, 0, 0, 0, 0, 0, 0, 0, 545, 0, - 0, 0, 0, 545, 0, 548, 0, 559, 0, 0, - 548, 548, 548, 559, 559, 0, 0, 0, 559 + 561, 561, 561, 561, -3, 561, 561, -3, 561, 561, + 561, 561, 561, 561, 118, 118, 118, 118, 171, 171, + 171, -84, 171, 171, 171, 171, 171, 171, 171, 171, + 171, 171, 171, 171, 171, 171, 118, 118, 171, 171, + 171, 171, 171, 171, -84, 171, 221, 221, 221, 204, + 204, 171, 0, 0, 0, 0, 0, 497, 221, 171, + 171, 171, 171, 0, 0, 171, 171, 540, 204, 0, + 0, 0, 0, 0, 0, 0, 497, 497, 497, 0, + 497, 221, 0, 272, 184, 400, 400, 400, 400, 0, + 497, 0, 540, 497, 0, 0, 0, 0, 0, 0, + 510, 0, 664, 0, 0, 0, 0, 508, 0, 0, + 0, 0, 0, 0, 0, 0, 540, 0, 0, 0, + 0, 540, 0, 484, 0, 505, 0, 0, 484, 484, + 484, 505, 505, 0, 0, 0, 505 ); protected $actionDefault = array( 3,32767,32767,32767,32767,32767,32767,32767,32767, 91, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 93, 503, 503, 493,32767, 503, - 493,32767,32767,32767, 311, 311, 311,32767, 448, 448, - 448, 448, 448, 448, 448,32767,32767,32767,32767,32767, - 390,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767, 93, 504, 504, 494,32767, 504, + 494,32767,32767,32767, 312, 312, 312,32767, 449, 449, + 449, 449, 449, 449, 449,32767,32767,32767,32767,32767, + 391,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,32767,32767,32767,32767,32767, @@ -540,102 +536,103 @@ class Php7 extends \PhpParser\ParserAbstract 32767,32767,32767,32767,32767,32767,32767,32767,32767, 91, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 500,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 501,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 373, 374, 376, 377, 310, 449, 257, 499, 309, 129, - 268, 259, 210, 307, 242, 133, 338, 391, 340, 389, - 393, 339, 316, 320, 321, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 314, 315, 392, 370, 369, - 368, 336, 337, 313, 341, 343, 313, 342, 359, 360, - 357, 358, 361, 362, 363, 364, 365,32767,32767,32767, + 374, 375, 377, 378, 311, 450, 257, 500, 310, 129, + 268, 259, 210, 308, 242, 133, 339, 392, 341, 390, + 394, 340, 317, 321, 322, 323, 324, 325, 326, 327, + 328, 329, 330, 331, 332, 315, 316, 393, 371, 370, + 369, 337, 338, 314, 342, 344, 314, 343, 360, 361, + 358, 359, 362, 363, 364, 365, 366,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 93,32767,32767,32767, 350, 351, - 249, 249, 249, 249,32767, 249, 293,32767,32767,32767, - 32767,32767,32767,32767, 442, 367, 345, 346, 344,32767, - 420,32767,32767,32767,32767,32767, 422,32767, 91,32767, - 32767,32767, 333, 335, 414, 502, 317, 501,32767,32767, - 93,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767, 417,32767,32767, 408, 91,32767,32767, 91, 173, - 229, 231, 178,32767, 425,32767,32767,32767,32767,32767, + 32767, 93,32767,32767,32767, 351, 352, 249, 249, 249, + 249,32767, 249, 294,32767,32767,32767,32767,32767,32767, + 32767, 443, 368, 346, 347, 345,32767, 421,32767,32767, + 32767,32767,32767, 423,32767, 91,32767,32767,32767, 334, + 336, 415, 503, 318, 502,32767,32767, 93,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 418,32767, + 32767, 409, 91,32767,32767, 91, 173, 229, 231, 178, + 32767, 426,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 355, 510,32767, 450,32767, - 347, 348, 349,32767,32767, 450, 450, 450,32767, 450, - 32767, 450, 450,32767,32767,32767,32767,32767, 178,32767, - 32767,32767,32767, 93, 423, 423, 91, 91, 91, 91, - 418,32767, 178,32767,32767,32767,32767,32767, 178, 90, - 90, 90, 90, 178, 90, 193,32767, 191, 191, 90, - 32767, 92,32767, 92, 195,32767, 464, 195, 90, 178, - 90, 215, 215, 399, 180, 92, 251, 251, 92, 399, - 90, 178, 251, 90,32767, 90, 251,32767,32767,32767, - 84,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 410,32767, 430,32767, 443, - 462, 408,32767, 353, 354, 356,32767, 452, 378, 379, - 380, 381, 382, 383, 384, 386,32767, 413,32767,32767, - 86, 120, 267,32767, 508, 86, 411,32767, 508,32767, - 32767,32767,32767,32767,32767,32767,32767,32767,32767, 86, - 86,32767,32767,32767,32767, 489,32767, 509,32767, 450, - 412,32767, 352, 426, 469,32767,32767, 451,32767,32767, - 32767, 86,32767,32767,32767,32767,32767,32767,32767,32767, - 430,32767,32767,32767,32767,32767, 450,32767,32767,32767, - 32767,32767,32767,32767, 306,32767,32767,32767,32767,32767, - 32767, 450,32767,32767, 241,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767,32767,32767, 84, - 60,32767, 286,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 135, 135, 3, 3, 135, 135, - 135, 135, 135, 135, 135, 135, 135, 135, 270, 168, - 270, 223, 270, 270, 226, 215, 215, 278, 135, 135 + 32767,32767, 356, 511,32767, 451,32767, 348, 349, 350, + 32767,32767, 451, 451, 451,32767, 451,32767, 451, 451, + 32767,32767,32767,32767,32767, 178,32767,32767,32767,32767, + 93, 424, 424, 91, 91, 91, 91, 419,32767, 178, + 32767,32767,32767,32767,32767, 178, 90, 90, 90, 90, + 178, 90, 193,32767, 191, 191, 90,32767, 92,32767, + 92, 195,32767, 465, 195, 90, 178, 90, 215, 215, + 400, 180, 92, 251, 251, 92, 400, 90, 178, 251, + 90,32767, 90, 251,32767,32767,32767, 84,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 32767,32767, 411,32767, 431,32767, 444, 463, 409,32767, + 354, 355, 357,32767, 453, 379, 380, 381, 382, 383, + 384, 385, 387,32767, 414,32767,32767, 86, 120, 267, + 32767, 509, 86, 412,32767, 509,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 86, 86,32767,32767, + 32767,32767, 490,32767, 510,32767, 451, 413,32767, 353, + 427, 470,32767,32767, 452,32767,32767,32767, 86,32767, + 32767,32767,32767,32767,32767,32767,32767,32767, 431,32767, + 32767,32767,32767,32767,32767, 451,32767,32767,32767,32767, + 32767,32767,32767, 307,32767,32767,32767,32767,32767,32767, + 32767,32767, 451,32767,32767, 241,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, + 84, 60,32767, 287,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767, 135, 135, 3, 270, 3, + 270, 135, 135, 135, 270, 270, 135, 135, 135, 135, + 135, 135, 135, 168, 223, 226, 215, 215, 279, 135, + 135 ); protected $goto = array( 166, 166, 140, 140, 148, 149, 140, 148, 151, 182, 167, 164, 164, 164, 164, 165, 165, 165, 165, 165, - 165, 165, 160, 161, 162, 163, 179, 177, 180, 433, - 434, 325, 435, 438, 439, 440, 441, 442, 443, 444, - 445, 899, 137, 141, 142, 143, 144, 145, 139, 146, + 165, 165, 160, 161, 162, 163, 179, 177, 180, 430, + 431, 322, 432, 435, 436, 437, 438, 439, 440, 441, + 442, 901, 137, 141, 142, 143, 144, 145, 139, 146, 147, 150, 176, 178, 181, 198, 201, 202, 204, 205, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, - 238, 239, 256, 257, 258, 330, 331, 332, 482, 183, + 235, 236, 253, 254, 255, 327, 328, 329, 479, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 152, 197, 153, 168, 169, 170, 199, 171, 154, 155, 156, 172, 157, 200, 138, 173, 158, - 174, 175, 159, 541, 203, 450, 550, 203, 742, 468, - 1085, 1085, 574, 505, 507, 519, 534, 537, 812, 544, - 552, 808, 675, 484, 455, 455, 455, 1085, 455, 307, - 311, 462, 485, 486, 488, 436, 436, 436, 470, 288, - 7, 455, 436, 436, 436, 436, 436, 436, 436, 436, - 436, 436, 436, 436, 436, 437, 437, 437, 702, 776, - 319, 549, 437, 437, 437, 437, 437, 437, 437, 437, - 437, 437, 437, 437, 437, 322, 447, 737, 985, 738, - 324, 309, 475, 447, 285, 475, 676, 461, 266, 455, - 455, 702, 471, 250, 702, 469, 491, 455, 455, 455, - 778, 778, 778, 778, 498, 518, 772, 779, 394, 974, - 764, 456, 975, 501, 503, 546, 500, 500, 1010, 711, - 11, 663, 480, 1010, 1010, 1010, 1010, 1010, 1010, 1010, - 1010, 1010, 1010, 1010, 1010, 1010, 706, 694, 840, 784, - 844, 986, 693, 693, 221, 787, 222, 223, 703, 703, - 703, 705, 692, 836, 817, 1077, 777, 678, 495, 987, - 1041, 483, 867, 553, 476, 1100, 882, 535, 865, 710, - 697, 981, 1065, 691, 683, 520, 733, 728, 729, 743, - 305, 684, 730, 681, 731, 732, 682, 473, 736, 946, - 452, 1055, 1056, 820, 337, 521, 341, 832, 1084, 1084, - 825, 328, 328, 272, 273, 275, 479, 335, 276, 336, - 277, 339, 506, 342, 524, 1084, 481, 494, 1054, 538, - 3, 4, 289, 290, 292, 511, 286, 315, 695, 841, - 578, 698, 1087, 525, 989, 982, 977, 826, 826, 826, - 826, 989, 826, 845, 826, 497, 789, 1060, 1060, 707, - 826, 884, 387, 452, 402, 1051, 0, 0, 989, 989, - 989, 989, 1051, 0, 989, 989, 0, 0, 0, 1062, - 1062, 674, 815, 815, 1072, 0, 875, 0, 750, 0, - 0, 751, 801, 782, 782, 780, 782, 571, 1047, 448, - 810, 805, 0, 0, 0, 0, 0, 0, 0, 0, - 984, 0, 0, 0, 0, 467, 0, 0, 0, 0, - 0, 843, 0, 0, 1049, 1049, 843, 0, 0, 0, + 174, 175, 159, 542, 203, 447, 551, 203, 743, 444, + 304, 308, 459, 482, 483, 485, 444, 493, 496, 519, + 1087, 1087, 987, 481, 452, 452, 452, 472, 452, 698, + 472, 677, 692, 779, 779, 779, 779, 1087, 467, 773, + 780, 452, 433, 433, 433, 285, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 434, + 434, 434, 676, 434, 434, 434, 434, 434, 434, 434, + 434, 434, 434, 434, 434, 434, 480, 869, 554, 319, + 664, 263, 536, 867, 321, 988, 247, 502, 282, 452, + 452, 515, 516, 1057, 1058, 466, 488, 452, 452, 452, + 3, 4, 465, 989, 1043, 712, 785, 575, 504, 506, + 837, 453, 520, 535, 538, 813, 545, 553, 809, 498, + 498, 1012, 477, 1012, 1012, 1012, 1012, 1012, 1012, 1012, + 1012, 1012, 1012, 1012, 1012, 1012, 703, 675, 976, 765, + 738, 977, 739, 1086, 1086, 499, 501, 547, 802, 783, + 783, 781, 783, 574, 679, 445, 811, 806, 473, 1079, + 1086, 876, 1102, 777, 316, 550, 478, 1067, 492, 703, + 302, 684, 703, 734, 729, 730, 744, 1089, 685, 731, + 682, 732, 733, 683, 877, 737, 306, 449, 521, 470, + 948, 833, 458, 821, 334, 522, 338, 468, 325, 325, + 269, 270, 272, 476, 332, 273, 333, 274, 336, 505, + 339, 525, 1056, 391, 826, 289, 539, 816, 816, 1074, + 694, 694, 510, 283, 312, 11, 704, 704, 704, 706, + 693, 991, 286, 287, 827, 827, 827, 827, 991, 827, + 696, 827, 699, 579, 1062, 1062, 526, 827, 842, 846, + 449, 984, 1053, 708, 790, 991, 991, 991, 991, 1053, + 979, 991, 991, 384, 399, 886, 1064, 1064, 707, 695, + 841, 495, 845, 0, 0, 751, 0, 788, 752, 0, + 0, 0, 0, 0, 0, 1049, 818, 0, 778, 0, + 0, 0, 0, 0, 0, 0, 0, 986, 884, 0, + 0, 711, 464, 983, 0, 0, 0, 0, 844, 0, + 0, 1051, 1051, 844, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 446, 462, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 446, + 0, 462, 0, 0, 305, 0, 450, 372, 0, 374, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 449, 465, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 449, 0, 465, 0, 0, 308, 0, 453, - 375, 0, 377, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 701, 0, 1092 + 0, 0, 0, 702, 0, 1094 ); protected $gotoCheck = array( @@ -650,80 +647,82 @@ class Php7 extends \PhpParser\ParserAbstract 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 33, 63, 56, 10, 8, 56, 13, 39, - 147, 147, 39, 39, 39, 39, 39, 39, 39, 39, - 39, 39, 17, 97, 10, 10, 10, 147, 10, 49, - 49, 49, 49, 49, 49, 134, 134, 134, 10, 80, - 110, 10, 134, 134, 134, 134, 134, 134, 134, 134, - 134, 134, 134, 134, 134, 136, 136, 136, 26, 76, - 76, 76, 136, 136, 136, 136, 136, 136, 136, 136, - 136, 136, 136, 136, 136, 69, 75, 55, 92, 55, - 69, 65, 85, 75, 69, 85, 18, 65, 133, 10, - 10, 26, 65, 133, 26, 10, 10, 10, 10, 10, - 75, 75, 75, 75, 46, 46, 75, 75, 65, 67, - 67, 10, 67, 68, 68, 68, 86, 86, 86, 36, - 65, 5, 10, 86, 86, 86, 86, 86, 86, 86, - 86, 86, 86, 86, 86, 86, 14, 14, 14, 40, - 14, 92, 26, 26, 73, 14, 73, 73, 26, 26, - 26, 26, 26, 94, 14, 145, 14, 13, 15, 92, - 92, 7, 7, 7, 135, 12, 14, 7, 7, 14, - 15, 14, 142, 15, 13, 54, 13, 13, 13, 13, - 52, 13, 13, 13, 13, 13, 13, 53, 13, 117, - 12, 140, 140, 88, 56, 56, 56, 90, 146, 146, - 91, 56, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 12, 146, 2, 2, 138, 12, - 37, 37, 80, 80, 20, 24, 11, 19, 28, 96, - 82, 30, 146, 23, 63, 126, 123, 63, 63, 63, - 63, 63, 63, 99, 63, 72, 79, 8, 8, 32, - 63, 113, 71, 12, 121, 97, -1, -1, 63, 63, - 63, 63, 97, -1, 63, 63, -1, -1, -1, 97, - 97, 16, 85, 85, 85, -1, 110, -1, 63, -1, - -1, 63, 16, 16, 16, 16, 16, 16, 97, 16, - 16, 16, -1, -1, -1, -1, -1, -1, -1, -1, - 12, -1, -1, -1, -1, 8, -1, -1, -1, -1, - -1, 97, -1, -1, 97, 97, 97, -1, -1, -1, + 33, 33, 33, 63, 56, 10, 8, 56, 13, 75, + 49, 49, 49, 49, 49, 49, 75, 15, 46, 46, + 148, 148, 92, 97, 10, 10, 10, 85, 10, 15, + 85, 18, 15, 75, 75, 75, 75, 148, 10, 75, + 75, 10, 135, 135, 135, 80, 135, 135, 135, 135, + 135, 135, 135, 135, 135, 135, 135, 135, 135, 137, + 137, 137, 17, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 137, 137, 137, 7, 7, 7, 69, + 5, 134, 7, 7, 69, 92, 134, 73, 69, 10, + 10, 73, 73, 141, 141, 10, 10, 10, 10, 10, + 37, 37, 39, 92, 92, 36, 40, 39, 39, 39, + 94, 10, 39, 39, 39, 39, 39, 39, 39, 86, + 86, 86, 10, 86, 86, 86, 86, 86, 86, 86, + 86, 86, 86, 86, 86, 86, 26, 16, 67, 67, + 55, 67, 55, 147, 147, 68, 68, 68, 16, 16, + 16, 16, 16, 16, 13, 16, 16, 16, 136, 146, + 147, 111, 12, 76, 76, 76, 2, 143, 2, 26, + 52, 13, 26, 13, 13, 13, 13, 147, 13, 13, + 13, 13, 13, 13, 111, 13, 65, 12, 54, 53, + 118, 90, 65, 88, 56, 56, 56, 65, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 12, 139, 65, 91, 20, 12, 85, 85, 85, + 26, 26, 24, 11, 19, 65, 26, 26, 26, 26, + 26, 63, 80, 80, 63, 63, 63, 63, 63, 63, + 28, 63, 30, 82, 8, 8, 23, 63, 96, 99, + 12, 127, 97, 32, 79, 63, 63, 63, 63, 97, + 124, 63, 63, 71, 122, 114, 97, 97, 14, 14, + 14, 72, 14, -1, -1, 63, -1, 14, 63, -1, + -1, -1, -1, -1, -1, 97, 14, -1, 14, -1, + -1, -1, -1, -1, -1, -1, -1, 12, 14, -1, + -1, 14, 8, 14, -1, -1, -1, -1, 97, -1, + -1, 97, 97, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 8, 8, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 8, + -1, 8, -1, -1, 8, -1, 8, 8, -1, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 8, 8, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 8, -1, 8, -1, -1, 8, -1, 8, - 8, -1, 8, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 8, -1, 8 + -1, -1, -1, 8, -1, 8 ); protected $gotoBase = array( - 0, 0, -230, 0, 0, 221, 0, 266, 106, 0, - -144, 54, 6, -19, -124, -115, 379, 130, 194, 45, - 75, 0, 0, -1, 56, 0, -91, 0, 43, 0, - 61, 0, 3, -23, 0, 0, 220, -248, 0, -436, - 230, 0, 0, 0, 0, 0, 179, 0, 0, 100, - 0, 0, 253, 72, 67, 172, 87, 0, 0, 0, - 0, 0, 0, 107, 0, -171, 0, -102, -18, -212, - 0, -16, -32, -316, 0, -51, -93, 0, 0, -2, - -243, 0, 20, 0, 0, 165, 9, 0, 58, 0, - 60, 57, -116, 0, 239, 0, 41, 128, 0, -4, + 0, 0, -281, 0, 0, 180, 0, 181, 106, 0, + -141, 54, 6, -19, 11, -253, 245, 170, 139, 45, + 69, 0, 0, 15, 56, 0, -10, 0, 58, 0, + 75, 0, 10, -23, 0, 0, 206, -369, 0, -344, + 197, 0, 0, 0, 0, 0, 93, 0, 0, 81, + 0, 0, 243, 77, 80, 235, 87, 0, 0, 0, + 0, 0, 0, 107, 0, -63, 0, -70, 17, -205, + 0, -2, -3, -363, 0, -115, 14, 0, 0, 9, + -234, 0, 36, 0, 0, 110, 12, 0, 61, 0, + 57, 74, -169, 0, 196, 0, 63, 128, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 140, 0, 0, 2, 0, 0, 0, 55, 0, 0, - 0, -35, 0, -9, 0, 0, -3, 0, 0, 0, - 0, 0, 0, -62, -72, 248, -52, 0, 76, 0, - 5, 0, 252, 0, 0, 236, 59, -129, 0, 0 + 0, 51, 0, 0, 19, 0, 0, 0, 59, 0, + 0, 0, -22, 0, 18, 0, 0, 16, 0, 0, + 0, 0, 0, 0, -66, -65, 242, -48, 0, 73, + 0, -90, 0, 247, 0, 0, 240, 7, -116, 0, + 0 ); protected $gotoDefault = array( - -32768, 407, 581, 2, 582, 653, 661, 526, 424, 551, - 425, 451, 326, 735, 888, 755, 717, 718, 719, 312, - 352, 303, 310, 512, 502, 398, 704, 371, 696, 395, - 699, 370, 708, 136, 527, 403, 712, 1, 714, 457, - 746, 300, 722, 301, 530, 724, 464, 726, 727, 306, - 313, 314, 892, 472, 499, 739, 206, 466, 740, 299, - 741, 749, 323, 304, 381, 404, 318, 869, 490, 321, - 366, 384, 496, 220, 474, 996, 774, 390, 379, 788, - 287, 796, 579, 804, 807, 426, 427, 388, 819, 389, - 830, 824, 1004, 383, 835, 372, 842, 1036, 374, 846, - 849, 347, 513, 340, 853, 854, 6, 859, 542, 543, - 874, 246, 400, 883, 514, 369, 898, 355, 965, 967, - 459, 396, 978, 378, 533, 405, 983, 1040, 367, 428, - 385, 274, 291, 249, 429, 446, 254, 430, 386, 1043, - 1050, 329, 1066, 271, 29, 1078, 1086, 283, 478, 493 + -32768, 404, 582, 2, 583, 654, 662, 527, 421, 552, + 422, 448, 323, 736, 890, 756, 718, 719, 720, 309, + 349, 300, 307, 511, 500, 395, 705, 368, 697, 392, + 700, 367, 709, 136, 528, 400, 713, 1, 715, 454, + 747, 297, 723, 298, 531, 725, 461, 727, 728, 303, + 310, 311, 894, 469, 497, 740, 206, 463, 741, 296, + 742, 750, 320, 301, 378, 401, 315, 871, 487, 318, + 363, 381, 494, 489, 471, 998, 775, 387, 376, 789, + 284, 797, 580, 805, 808, 423, 424, 385, 820, 386, + 831, 825, 1006, 380, 836, 369, 843, 1038, 371, 847, + 220, 850, 344, 512, 337, 855, 856, 6, 861, 543, + 544, 7, 243, 397, 885, 513, 366, 900, 352, 967, + 969, 456, 393, 980, 375, 534, 402, 985, 1042, 364, + 425, 382, 271, 288, 246, 426, 443, 251, 427, 383, + 1045, 1052, 326, 1068, 268, 29, 1080, 1088, 280, 475, + 491 ); protected $ruleToNonTerminal = array( @@ -753,12 +752,12 @@ class Php7 extends \PhpParser\ParserAbstract 42, 44, 44, 54, 54, 54, 54, 68, 68, 87, 87, 88, 88, 88, 90, 90, 91, 91, 91, 89, 89, 69, 69, 92, 92, 93, 93, 94, 94, 94, - 50, 95, 95, 96, 51, 98, 98, 99, 99, 73, - 73, 100, 100, 100, 100, 100, 105, 105, 106, 106, - 107, 107, 107, 107, 107, 108, 109, 109, 104, 104, - 101, 101, 103, 103, 111, 111, 110, 110, 110, 110, - 110, 110, 102, 112, 112, 114, 113, 113, 52, 115, - 115, 46, 46, 33, 33, 33, 33, 33, 33, 33, + 50, 95, 95, 96, 51, 98, 98, 99, 99, 100, + 100, 73, 101, 101, 101, 101, 101, 106, 106, 107, + 107, 108, 108, 108, 108, 108, 109, 110, 110, 105, + 105, 102, 102, 104, 104, 112, 112, 111, 111, 111, + 111, 111, 111, 103, 113, 113, 115, 114, 114, 52, + 116, 116, 46, 46, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, @@ -766,20 +765,20 @@ class Php7 extends \PhpParser\ParserAbstract 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 33, 33, 33, 33, 122, 116, 116, 121, - 121, 124, 125, 125, 126, 127, 127, 127, 75, 75, - 63, 63, 63, 117, 117, 117, 129, 129, 118, 118, - 120, 120, 120, 123, 123, 134, 134, 134, 86, 136, - 136, 136, 119, 119, 119, 119, 119, 119, 119, 119, - 119, 119, 119, 119, 119, 119, 119, 119, 49, 49, - 132, 132, 132, 128, 128, 128, 137, 137, 137, 137, - 137, 137, 56, 56, 56, 97, 97, 97, 97, 140, - 139, 131, 131, 131, 131, 131, 131, 130, 130, 130, - 138, 138, 138, 138, 85, 141, 141, 142, 142, 142, - 142, 142, 142, 142, 135, 144, 144, 143, 143, 145, - 145, 145, 145, 145, 133, 133, 133, 133, 147, 148, - 146, 146, 146, 146, 146, 146, 146, 149, 149, 149, - 149 + 33, 33, 33, 33, 33, 33, 33, 123, 117, 117, + 122, 122, 125, 126, 126, 127, 128, 128, 128, 75, + 75, 63, 63, 63, 118, 118, 118, 130, 130, 119, + 119, 121, 121, 121, 124, 124, 135, 135, 135, 86, + 137, 137, 137, 120, 120, 120, 120, 120, 120, 120, + 120, 120, 120, 120, 120, 120, 120, 120, 120, 49, + 49, 133, 133, 133, 129, 129, 129, 138, 138, 138, + 138, 138, 138, 56, 56, 56, 97, 97, 97, 97, + 141, 140, 132, 132, 132, 132, 132, 132, 131, 131, + 131, 139, 139, 139, 139, 85, 142, 142, 143, 143, + 143, 143, 143, 143, 143, 136, 145, 145, 144, 144, + 146, 146, 146, 146, 146, 134, 134, 134, 134, 148, + 149, 147, 147, 147, 147, 147, 147, 147, 150, 150, + 150, 150 ); protected $ruleToLength = array( @@ -810,32 +809,32 @@ class Php7 extends \PhpParser\ParserAbstract 3, 4, 6, 4, 1, 2, 1, 1, 1, 0, 1, 0, 2, 2, 4, 1, 3, 1, 2, 2, 2, 3, 1, 1, 2, 3, 1, 1, 3, 2, - 0, 3, 4, 9, 3, 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, 2, 1, 3, 1, 1, 3, 2, 3, - 1, 0, 1, 1, 3, 3, 3, 4, 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, 3, 3, 3, 3, 3, 3, 3, + 0, 1, 3, 4, 9, 3, 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, 2, 1, 3, 1, 1, 3, 2, + 3, 1, 0, 1, 1, 3, 3, 3, 4, 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, 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, 8, 9, 7, 3, 2, 0, - 4, 2, 1, 3, 2, 2, 2, 4, 1, 1, - 1, 2, 3, 1, 1, 1, 1, 1, 0, 3, - 0, 1, 1, 0, 1, 1, 3, 3, 3, 4, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 3, 2, 3, 3, 0, 1, - 1, 3, 1, 1, 3, 1, 1, 4, 4, 4, - 1, 4, 1, 1, 3, 1, 4, 2, 2, 1, - 3, 1, 4, 4, 3, 3, 3, 1, 3, 1, - 1, 3, 1, 1, 4, 3, 1, 1, 2, 1, - 3, 4, 3, 0, 1, 1, 1, 3, 1, 3, - 1, 4, 2, 0, 2, 2, 1, 2, 1, 1, - 1, 4, 3, 3, 3, 6, 3, 1, 1, 2, - 1 + 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, 8, 9, 7, 3, 2, + 0, 4, 2, 1, 3, 2, 2, 2, 4, 1, + 1, 1, 2, 3, 1, 1, 1, 1, 1, 0, + 3, 0, 1, 1, 0, 1, 1, 3, 3, 3, + 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 3, 2, 3, 3, 0, + 1, 1, 3, 1, 1, 3, 1, 1, 4, 4, + 4, 1, 4, 1, 1, 3, 1, 4, 2, 2, + 1, 3, 1, 4, 4, 3, 3, 3, 1, 3, + 1, 1, 3, 1, 1, 4, 3, 1, 1, 2, + 1, 3, 4, 3, 0, 1, 1, 1, 3, 1, + 3, 1, 4, 2, 0, 2, 2, 1, 2, 1, + 1, 1, 4, 3, 3, 3, 6, 3, 1, 1, + 2, 1 ); protected function initReduceCallbacks() { @@ -1672,137 +1671,138 @@ class Php7 extends \PhpParser\ParserAbstract $this->semValue = array(); }, 271 => function ($stackPos) { - $this->semValue = new Stmt\Property($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkProperty($this->semValue, $stackPos-(3-1)); + $startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop($startAttributes + $this->endAttributes); } else { $nop = null; }; + if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 272 => function ($stackPos) { - $this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-1)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); $this->checkClassConst($this->semValue, $stackPos-(4-1)); + $this->semValue = new Stmt\Property($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->checkProperty($this->semValue, $stackPos-(3-1)); }, 273 => function ($stackPos) { + $this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-1)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); $this->checkClassConst($this->semValue, $stackPos-(4-1)); + }, + 274 => function ($stackPos) { $this->semValue = new Stmt\ClassMethod($this->semStack[$stackPos-(9-4)], ['type' => $this->semStack[$stackPos-(9-1)], 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-6)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); $this->checkClassMethod($this->semValue, $stackPos-(9-1)); }, - 274 => function ($stackPos) { + 275 => function ($stackPos) { $this->semValue = new Stmt\TraitUse($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 275 => function ($stackPos) { + 276 => function ($stackPos) { $this->semValue = null; /* will be skipped */ }, - 276 => function ($stackPos) { - $this->semValue = array(); - }, 277 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = array(); }, 278 => function ($stackPos) { - $this->semValue = array(); + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 279 => function ($stackPos) { - $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semValue = array(); }, 280 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 281 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(5-1)][0], $this->semStack[$stackPos-(5-1)][1], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); + $this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 282 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], null, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(5-1)][0], $this->semStack[$stackPos-(5-1)][1], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, 283 => function ($stackPos) { - $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], null, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 284 => function ($stackPos) { $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 285 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]); + $this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 286 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]); }, 287 => function ($stackPos) { - $this->semValue = array(null, $this->semStack[$stackPos-(1-1)]); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 288 => function ($stackPos) { - $this->semValue = null; + $this->semValue = array(null, $this->semStack[$stackPos-(1-1)]); }, 289 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = null; }, 290 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 291 => function ($stackPos) { - $this->semValue = 0; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 292 => function ($stackPos) { $this->semValue = 0; }, 293 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = 0; }, 294 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 295 => function ($stackPos) { - $this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)]; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 296 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_PUBLIC; + $this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)]; }, 297 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_PROTECTED; + $this->semValue = Stmt\Class_::MODIFIER_PUBLIC; }, 298 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_PRIVATE; + $this->semValue = Stmt\Class_::MODIFIER_PROTECTED; }, 299 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_STATIC; + $this->semValue = Stmt\Class_::MODIFIER_PRIVATE; }, 300 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; + $this->semValue = Stmt\Class_::MODIFIER_STATIC; }, 301 => function ($stackPos) { - $this->semValue = Stmt\Class_::MODIFIER_FINAL; + $this->semValue = Stmt\Class_::MODIFIER_ABSTRACT; }, 302 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semValue = Stmt\Class_::MODIFIER_FINAL; }, 303 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); - }, - 304 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 305 => function ($stackPos) { - $this->semValue = new Node\VarLikeIdentifier(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, - 306 => function ($stackPos) { - $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, - 307 => function ($stackPos) { - $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); - }, - 308 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 309 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; - }, - 310 => function ($stackPos) { + 304 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, + 305 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, + 306 => function ($stackPos) { + $this->semValue = new Node\VarLikeIdentifier(substr($this->semStack[$stackPos-(1-1)], 1), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 307 => function ($stackPos) { + $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(1-1)], null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + }, + 308 => function ($stackPos) { + $this->semValue = new Stmt\PropertyProperty($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + }, + 309 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(2-1)]; + }, + 310 => function ($stackPos) { + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + }, 311 => function ($stackPos) { - $this->semValue = array(); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 312 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = array(); }, 313 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 314 => function ($stackPos) { - $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 315 => function ($stackPos) { $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); @@ -1811,437 +1811,437 @@ class Php7 extends \PhpParser\ParserAbstract $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 317 => function ($stackPos) { - $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 318 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 319 => function ($stackPos) { - $this->semValue = new Expr\Clone_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 320 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\Clone_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 321 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 322 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 323 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 324 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 325 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 326 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 327 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 328 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 329 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 330 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 331 => function ($stackPos) { - $this->semValue = new Expr\AssignOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 332 => function ($stackPos) { - $this->semValue = new Expr\PostInc($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 333 => function ($stackPos) { - $this->semValue = new Expr\PreInc($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\PostInc($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 334 => function ($stackPos) { - $this->semValue = new Expr\PostDec($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\PreInc($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 335 => function ($stackPos) { - $this->semValue = new Expr\PreDec($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\PostDec($this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 336 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PreDec($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 337 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 338 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 339 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 340 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 341 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 342 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 343 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 344 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 345 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 346 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 347 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 348 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 349 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 350 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 351 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 352 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 353 => function ($stackPos) { - $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 354 => function ($stackPos) { - $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 355 => function ($stackPos) { - $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 356 => function ($stackPos) { - $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 357 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 358 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 359 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 360 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 361 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 362 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 363 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 364 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 365 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 366 => function ($stackPos) { - $this->semValue = new Expr\Instanceof_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 367 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = new Expr\Instanceof_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 368 => function ($stackPos) { - $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 369 => function ($stackPos) { - $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->startAttributeStack[$stackPos-(5-1)] + $this->endAttributes); }, 370 => function ($stackPos) { - $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 371 => function ($stackPos) { - $this->semValue = new Expr\Isset_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 372 => function ($stackPos) { - $this->semValue = new Expr\Empty_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Isset_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 373 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Empty_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 374 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 375 => function ($stackPos) { - $this->semValue = new Expr\Eval_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 376 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Eval_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 377 => function ($stackPos) { - $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 378 => function ($stackPos) { - $this->semValue = new Expr\Cast\Int_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 379 => function ($stackPos) { - $this->semValue = new Expr\Cast\Double($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Int_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 380 => function ($stackPos) { - $this->semValue = new Expr\Cast\String_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Double($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 381 => function ($stackPos) { - $this->semValue = new Expr\Cast\Array_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\String_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 382 => function ($stackPos) { - $this->semValue = new Expr\Cast\Object_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Array_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 383 => function ($stackPos) { - $this->semValue = new Expr\Cast\Bool_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Object_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 384 => function ($stackPos) { - $this->semValue = new Expr\Cast\Unset_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Bool_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 385 => function ($stackPos) { + $this->semValue = new Expr\Cast\Unset_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 386 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strtolower($this->semStack[$stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE; $this->semValue = new Expr\Exit_($this->semStack[$stackPos-(2-2)], $attrs); }, - 386 => function ($stackPos) { + 387 => function ($stackPos) { $this->semValue = new Expr\ErrorSuppress($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 387 => function ($stackPos) { + 388 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 388 => function ($stackPos) { + 389 => function ($stackPos) { $this->semValue = new Expr\ShellExec($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 389 => function ($stackPos) { + 390 => function ($stackPos) { $this->semValue = new Expr\Print_($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 390 => function ($stackPos) { + 391 => function ($stackPos) { $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 391 => function ($stackPos) { + 392 => function ($stackPos) { $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(2-2)], null, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 392 => function ($stackPos) { + 393 => function ($stackPos) { $this->semValue = new Expr\Yield_($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-2)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, - 393 => function ($stackPos) { + 394 => function ($stackPos) { $this->semValue = new Expr\YieldFrom($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 394 => function ($stackPos) { + 395 => function ($stackPos) { $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$stackPos-(8-2)], 'params' => $this->semStack[$stackPos-(8-4)], 'uses' => $this->semStack[$stackPos-(8-6)], 'returnType' => $this->semStack[$stackPos-(8-7)], 'stmts' => $this->semStack[$stackPos-(8-8)]], $this->startAttributeStack[$stackPos-(8-1)] + $this->endAttributes); }, - 395 => function ($stackPos) { + 396 => function ($stackPos) { $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-5)], 'uses' => $this->semStack[$stackPos-(9-7)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->startAttributeStack[$stackPos-(9-1)] + $this->endAttributes); }, - 396 => function ($stackPos) { + 397 => function ($stackPos) { $this->semValue = array(new Stmt\Class_(null, ['type' => 0, 'extends' => $this->semStack[$stackPos-(7-3)], 'implements' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)]], $this->startAttributeStack[$stackPos-(7-1)] + $this->endAttributes), $this->semStack[$stackPos-(7-2)]); $this->checkClass($this->semValue[0], -1); }, - 397 => function ($stackPos) { + 398 => function ($stackPos) { $this->semValue = new Expr\New_($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, - 398 => function ($stackPos) { + 399 => function ($stackPos) { list($class, $ctorArgs) = $this->semStack[$stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, - 399 => function ($stackPos) { + 400 => function ($stackPos) { $this->semValue = array(); }, - 400 => function ($stackPos) { + 401 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(4-3)]; }, - 401 => function ($stackPos) { + 402 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(2-1)]; }, - 402 => function ($stackPos) { + 403 => function ($stackPos) { $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, - 403 => function ($stackPos) { + 404 => function ($stackPos) { $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, - 404 => function ($stackPos) { - $this->semValue = new Expr\ClosureUse($this->semStack[$stackPos-(2-2)], $this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, 405 => function ($stackPos) { - $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\ClosureUse($this->semStack[$stackPos-(2-2)], $this->semStack[$stackPos-(2-1)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 406 => function ($stackPos) { $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 407 => function ($stackPos) { - $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 408 => function ($stackPos) { - $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 409 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 410 => function ($stackPos) { $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 410 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, 411 => function ($stackPos) { - $this->semValue = new Name\FullyQualified($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 412 => function ($stackPos) { - $this->semValue = new Name\Relative($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Name\FullyQualified($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 413 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Name\Relative($this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 414 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 415 => function ($stackPos) { - $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 416 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; }, 417 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 418 => function ($stackPos) { - $this->semValue = null; - }, - 419 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; - }, - 420 => function ($stackPos) { - $this->semValue = array(); - }, - 421 => function ($stackPos) { - $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$stackPos-(1-1)], '`'), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes)); - }, - 422 => function ($stackPos) { - foreach ($this->semStack[$stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', true); } }; $this->semValue = $this->semStack[$stackPos-(1-1)]; - }, - 423 => function ($stackPos) { - $this->semValue = array(); - }, - 424 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 419 => function ($stackPos) { + $this->semValue = null; + }, + 420 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(3-2)]; + }, + 421 => function ($stackPos) { + $this->semValue = array(); + }, + 422 => function ($stackPos) { + $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$stackPos-(1-1)], '`'), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes)); + }, + 423 => function ($stackPos) { + foreach ($this->semStack[$stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', true); } }; $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, + 424 => function ($stackPos) { + $this->semValue = array(); + }, 425 => function ($stackPos) { - $this->semValue = new Expr\ConstFetch($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 426 => function ($stackPos) { - $this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ConstFetch($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 427 => function ($stackPos) { - $this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], new Expr\Error($this->startAttributeStack[$stackPos-(3-3)] + $this->endAttributeStack[$stackPos-(3-3)]), $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 428 => function ($stackPos) { + $this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], new Expr\Error($this->startAttributeStack[$stackPos-(3-3)] + $this->endAttributeStack[$stackPos-(3-3)]), $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); $this->errorState = 2; + }, + 429 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_SHORT; $this->semValue = new Expr\Array_($this->semStack[$stackPos-(3-2)], $attrs); }, - 429 => function ($stackPos) { + 430 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_LONG; $this->semValue = new Expr\Array_($this->semStack[$stackPos-(4-3)], $attrs); }, - 430 => function ($stackPos) { + 431 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 431 => function ($stackPos) { + 432 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$stackPos-(1-1)][0] === "'" || ($this->semStack[$stackPos-(1-1)][1] === "'" && ($this->semStack[$stackPos-(1-1)][0] === 'b' || $this->semStack[$stackPos-(1-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED); $this->semValue = new Scalar\String_(Scalar\String_::parse($this->semStack[$stackPos-(1-1)]), $attrs); }, - 432 => function ($stackPos) { + 433 => function ($stackPos) { $this->semValue = $this->parseLNumber($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 433 => function ($stackPos) { + 434 => function ($stackPos) { $this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$stackPos-(1-1)]), $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 434 => function ($stackPos) { + 435 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Line($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 435 => function ($stackPos) { + 436 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\File($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 436 => function ($stackPos) { + 437 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Dir($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 437 => function ($stackPos) { + 438 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Class_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 438 => function ($stackPos) { + 439 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Trait_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 439 => function ($stackPos) { + 440 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Method($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 440 => function ($stackPos) { + 441 => function ($stackPos) { $this->semValue = new Scalar\MagicConst\Function_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, - 441 => function ($stackPos) { - $this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, 442 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 443 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 444 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, + 445 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$stackPos-(3-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_(Scalar\String_::parseDocString($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)]), $attrs); }, - 445 => function ($stackPos) { + 446 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$stackPos-(2-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$stackPos-(2-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_('', $attrs); }, - 446 => function ($stackPos) { + 447 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED; foreach ($this->semStack[$stackPos-(3-2)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '"', true); } }; $this->semValue = new Scalar\Encapsed($this->semStack[$stackPos-(3-2)], $attrs); }, - 447 => function ($stackPos) { + 448 => function ($stackPos) { $attrs = $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$stackPos-(3-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; foreach ($this->semStack[$stackPos-(3-2)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, null, true); } } $s->value = preg_replace('~(\r\n|\n|\r)\z~', '', $s->value); if ('' === $s->value) array_pop($this->semStack[$stackPos-(3-2)]);; $this->semValue = new Scalar\Encapsed($this->semStack[$stackPos-(3-2)], $attrs); }, - 448 => function ($stackPos) { - $this->semValue = null; - }, 449 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = null; }, 450 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 451 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 452 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 453 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 454 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; - }, - 455 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, + 455 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(3-2)]; + }, 456 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 457 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 458 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); @@ -2250,186 +2250,189 @@ class Php7 extends \PhpParser\ParserAbstract $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 460 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 461 => function ($stackPos) { - $this->semValue = new Expr\MethodCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 462 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\MethodCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 463 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 464 => function ($stackPos) { - $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 465 => function ($stackPos) { - $this->semValue = substr($this->semStack[$stackPos-(1-1)], 1); + $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 466 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(4-3)]; + $this->semValue = substr($this->semStack[$stackPos-(1-1)], 1); }, 467 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(4-3)]; }, 468 => function ($stackPos) { - $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 469 => function ($stackPos) { - $var = $this->semStack[$stackPos-(1-1)]; $this->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes) : $var; + $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); $this->errorState = 2; }, 470 => function ($stackPos) { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $var = $this->semStack[$stackPos-(1-1)]; $this->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes) : $var; }, 471 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 472 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 473 => function ($stackPos) { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 474 => function ($stackPos) { - $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 475 => function ($stackPos) { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 476 => function ($stackPos) { $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 477 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 478 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; - }, - 479 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); - }, - 480 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, - 481 => function ($stackPos) { + 479 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(3-2)]; }, - 482 => function ($stackPos) { + 480 => function ($stackPos) { $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 481 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(1-1)]; + }, + 482 => function ($stackPos) { + $this->semValue = $this->semStack[$stackPos-(3-2)]; + }, 483 => function ($stackPos) { - $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 484 => function ($stackPos) { - $this->semValue = new Expr\List_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Error($this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; }, 485 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = new Expr\List_($this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 486 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 487 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 488 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(2-2)], null, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); - }, - 489 => function ($stackPos) { $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, + 489 => function ($stackPos) { + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(2-2)], null, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, 490 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 491 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-1)], true, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); - }, - 492 => function ($stackPos) { $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, + 492 => function ($stackPos) { + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-1)], true, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + }, 493 => function ($stackPos) { - $this->semValue = null; + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 494 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; $end = count($this->semValue)-1; if ($this->semValue[$end] === null) array_pop($this->semValue); + $this->semValue = null; }, 495 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos]; + $this->semValue = $this->semStack[$stackPos-(1-1)]; $end = count($this->semValue)-1; if ($this->semValue[$end] === null) array_pop($this->semValue); }, 496 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos]; }, 497 => function ($stackPos) { - $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; + $this->semValue = $this->semStack[$stackPos]; }, 498 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)]; }, 499 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 500 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 501 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-1)], true, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 502 => function ($stackPos) { - $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(2-2)], null, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-1)], true, $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 503 => function ($stackPos) { - $this->semValue = null; + $this->semValue = new Expr\ArrayItem($this->semStack[$stackPos-(2-2)], null, true, $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); }, 504 => function ($stackPos) { - $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; + $this->semValue = null; }, 505 => function ($stackPos) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 506 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(1-1)]); + $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }, 507 => function ($stackPos) { - $this->semValue = array($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); + $this->semValue = array($this->semStack[$stackPos-(1-1)]); }, 508 => function ($stackPos) { - $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); }, 509 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 510 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(1-1)]; + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 511 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(1-1)]; }, 512 => function ($stackPos) { - $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->startAttributeStack[$stackPos-(4-1)] + $this->endAttributes); }, 513 => function ($stackPos) { - $this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 514 => function ($stackPos) { $this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 515 => function ($stackPos) { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-4)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->startAttributeStack[$stackPos-(3-1)] + $this->endAttributes); }, 516 => function ($stackPos) { - $this->semValue = $this->semStack[$stackPos-(3-2)]; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-4)], $this->startAttributeStack[$stackPos-(6-1)] + $this->endAttributes); }, 517 => function ($stackPos) { - $this->semValue = new Scalar\String_($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$stackPos-(3-2)]; }, 518 => function ($stackPos) { - $this->semValue = $this->parseNumString($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\String_($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 519 => function ($stackPos) { - $this->semValue = $this->parseNumString('-' . $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->parseNumString($this->semStack[$stackPos-(1-1)], $this->startAttributeStack[$stackPos-(1-1)] + $this->endAttributes); }, 520 => function ($stackPos) { + $this->semValue = $this->parseNumString('-' . $this->semStack[$stackPos-(2-2)], $this->startAttributeStack[$stackPos-(2-1)] + $this->endAttributes); + }, + 521 => function ($stackPos) { $this->semValue = $this->semStack[$stackPos-(1-1)]; }, ]; diff --git a/test/code/parser/commentAtEndOfClass.test b/test/code/parser/commentAtEndOfClass.test new file mode 100644 index 0000000..389df2b --- /dev/null +++ b/test/code/parser/commentAtEndOfClass.test @@ -0,0 +1,37 @@ +Comment at end of class (#509) +----- +