diff --git a/grammar/php5.y b/grammar/php5.y index 4212cb4..97a66ef 100644 --- a/grammar/php5.y +++ b/grammar/php5.y @@ -516,9 +516,13 @@ property_declaration_list: | property_declaration_list ',' property_declaration { push($1, $3); } ; +property_decl_name: + T_VARIABLE { $$ = maybeMakeIdent(parseVar($1)); } +; + property_declaration: - T_VARIABLE { $$ = Stmt\PropertyProperty[parseVar($1), null]; } - | T_VARIABLE '=' static_scalar { $$ = Stmt\PropertyProperty[parseVar($1), $3]; } + property_decl_name { $$ = Stmt\PropertyProperty[$1, null]; } + | property_decl_name '=' static_scalar { $$ = Stmt\PropertyProperty[$1, $3]; } ; expr_list: diff --git a/grammar/php7.y b/grammar/php7.y index fa459e6..0b0c523 100644 --- a/grammar/php7.y +++ b/grammar/php7.y @@ -521,9 +521,13 @@ property_declaration_list: | property_declaration_list ',' property_declaration { push($1, $3); } ; +property_decl_name: + T_VARIABLE { $$ = maybeMakeIdent(parseVar($1)); } +; + property_declaration: - T_VARIABLE { $$ = Stmt\PropertyProperty[parseVar($1), null]; } - | T_VARIABLE '=' expr { $$ = Stmt\PropertyProperty[parseVar($1), $3]; } + property_decl_name { $$ = Stmt\PropertyProperty[$1, null]; } + | property_decl_name '=' expr { $$ = Stmt\PropertyProperty[$1, $3]; } ; expr_list: diff --git a/lib/PhpParser/Parser/Php5.php b/lib/PhpParser/Parser/Php5.php index dc859d0..e2cd1dc 100644 --- a/lib/PhpParser/Parser/Php5.php +++ b/lib/PhpParser/Parser/Php5.php @@ -19,7 +19,7 @@ class Php5 extends \PhpParser\ParserAbstract { protected $tokenToSymbolMapSize = 392; protected $actionTableSize = 1004; - protected $gotoTableSize = 637; + protected $gotoTableSize = 638; protected $invalidSymbol = 157; protected $errorSymbol = 1; @@ -235,105 +235,105 @@ class Php5 extends \PhpParser\ParserAbstract protected $action = array( 673, 674, 675, 676, 677,-32766, 678, 679, 680, 716, 717, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 422, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 23, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,-32766,-32766,-32766,-32766,-32766,-32766,-32766, - -32766,-32767,-32767,-32767,-32767, 467, 237, 238,-32766,-32766, + -32766,-32767,-32767,-32767,-32767, 8, 237, 238,-32766,-32766, -32766,-32766, 681,-32766, 0,-32766,-32766,-32766,-32766,-32766, -32766,-32767,-32767,-32767,-32767,-32767, 682, 683, 684, 685, - 686, 687, 688, 1175, 204, 748,-32766,-32766,-32766,-32766, - -32766, 23, 689, 690, 691, 692, 693, 694, 695, 696, + 686, 687, 688, 1176, 204, 748,-32766,-32766,-32766,-32766, + -32766, 423, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 719, 720, 721, 722, 723, 711, 712, 713, 714, 715, 700, 701, 702, 703, 704, 705, 706, 742, 743, 744, 745, 746, 747, 707, 708, 709, 710, 740, 731, 729, 730, 726, 727, 121, 718, 724, 725, - 732, 733, 735, 734, 736, 737, 52, 53, 423, 54, - 55, 728, 739, 738, 420, 56, 57, 339, 58,-32766, + 732, 733, 735, 734, 736, 737, 52, 53, 424, 54, + 55, 728, 739, 738, 282, 56, 57, 339, 58,-32766, -32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, 7,-32767, - -32767,-32767,-32767, 50, 329, 1057, 589, 948, 949, 950, - 947, 946, 945, 940, 1217, 306, 1219, 1218, 766, 767, - 824, 59, 60,-32766,-32766,-32766, 921, 61, 1175, 62, + -32767,-32767,-32767, 50, 329, 903, 589, 948, 949, 950, + 947, 946, 945, 940, 1218, 306, 1220, 1219, 766, 767, + 824, 59, 60,-32766,-32766,-32766, 922, 61, 1176, 62, 291, 292, 63, 64, 65, 66, 67, 68, 69, 70, - 358, 24, 299, 71, 415,-32766,-32766,-32766, 1189, 1090, - 1091, 751, 750, 1182, 213, 214, 215, 473,-32766,-32766, - -32766, 825, 409, 1102, 309,-32766, 903,-32766,-32766,-32766, - -32766,-32766,-32766, 1039, 200, -271, 435, 1039,-32766, 282, + 420, 24, 299, 71, 416,-32766,-32766,-32766, 1190, 1091, + 1092, 751, 750, 1183, 213, 214, 215, 473,-32766,-32766, + -32766, 825, 409, 1103, 309,-32766, 1058,-32766,-32766,-32766, + -32766,-32766,-32766, 1040, 200, -271, 436, 1040,-32766, 421, -32766,-32766,-32766,-32766,-32766, 120, 497, 948, 949, 950, 947, 946, 945, 348, 481, 482, 293, 624, 125,-32766, - 896, 897, 339, 483, 484,-32766, 1096, 1097, 1098, 1099, - 1093, 1094, 307, 498,-32766, 418, 431, 498, 1100, 1095, - 431, 326, -222, 872, 750, 39, 280, 332, 321, 18, - 322, 424, -124, -124, -124, -4, 825, 472, 99, 100, - 101, 814, 301, 377, 38, 19, 425, -124, 474, -124, - 475, -124, 476, -124, 102, 426, -124, -124, -124, 28, - 29, 427, 428, 625, 30, 477, 431, 815, 72, 297, + 896, 897, 339, 483, 484,-32766, 1097, 1098, 1099, 1100, + 1094, 1095, 307, 498,-32766, 358, 432, 498, 1101, 1096, + 432, 326, -222, 872, 750, 39, 280, 332, 321, 1191, + 322, 425, -124, -124, -124, -4, 825, 472, 99, 100, + 101, 814, 301, 377, 38, 19, 426, -124, 474, -124, + 475, -124, 476, -124, 102, 427, -124, -124, -124, 28, + 29, 428, 429, 625, 30, 477, 432, 815, 72, 297, 926, 350, 349, 478, 479,-32766,-32766,-32766, 298, 480, - 1039, 811, 796, 843, 429, 430,-32767,-32767,-32767,-32767, + 1040, 812, 796, 843, 430, 431,-32767,-32767,-32767,-32767, 94, 95, 96, 97, 98,-32766, 126,-32766,-32766,-32766, - -32766, 1140, 213, 214, 215, 295, 424, 239, 827, 639, - -124, 1039, 472, 896, 897, 1209, 814, 1039, 1208, 38, - 19, 425, 200, 474, 1190, 475, 498, 476, 127, 431, - 426, 213, 214, 215, 28, 29, 427, 428, 407, 30, - 477, 1039, 873, 72, 320, 825, 350, 349, 478, 479, - 1039, 200, 214, 215, 480, 419, 765, 758, 843, 429, - 430, 213, 214, 215, 295, -218, 76, 77, 78, 47, - 338, 200, 483, 648, 27, 445, 31, 294, 331, 8, - 335, 200, 241, 827, 639, -4, 32, 414, 79, 80, + -32766, 1141, 213, 214, 215, 295, 425, 239, 827, 639, + -124, 1040, 472, 896, 897, 1210, 814, 1040, 1209, 38, + 19, 426, 200, 474, 18, 475, 498, 476, 127, 432, + 427, 213, 214, 215, 28, 29, 428, 429, 407, 30, + 477, 1040, 873, 72, 320, 825, 350, 349, 478, 479, + 1040, 200, 214, 215, 480, 419, 811, 758, 843, 430, + 431, 213, 214, 215, 295, -218, 76, 77, 78, 47, + 338, 200, 483, 648, 27, 446, 31, 294, 331, 422, + 335, 200, 241, 827, 639, -4, 32, 415, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 1214, 301, 34, 825, 424, 804, 124,-32766,-32766, + 101, 1215, 301, 34, 825, 425, 804, 124,-32766,-32766, -32766, 472, 902, 129, 102, 814, 912, 580, 38, 19, - 425, 448, 474, 1182, 475, 119, 476, 46,-32766, 426, - -32766,-32766, 643, 28, 29, 427, 825, 806, 30, 477, - 416, 117, 72, 808, 49, 350, 349,-32766,-32766,-32766, - -32766,-32766,-32766, 480, 200, 1039, 234, 235, 236, 213, - 214, 215,-32766,-32766, 654, 1141, 124,-32766,-32766,-32766, - -32766,-32766, 237, 238, 424, 96, 97, 98, 283, 200, - 472, 524, 827, 639, 814, 446, 812, 38, 19, 425, - 284, 474, 823, 475, 751, 476, 1182, 332, 426, 231, - 232, 233, 28, 29, 427, 825, 424, 30, 477, 116, - 922, 72, 472, 215, 350, 349, 814, 207, 1039, 38, - 19, 425, 480, 474, 243, 475, 118, 476, 1039, 1067, - 426, 200, 836, 642, 28, 29, 427, 825, 1102, 30, - 477, 296, 244, 72, 206, 123, 350, 349,-32766,-32766, - 498, 827, 639, 431, 480, 115,-32766,-32766,-32766, 441, - 498, 242, 641, 431, 205, 645, 237, 238, 436,-32766, - 332, 455, 20, 460, 595, 424,-32766, 130, 359, 766, - 767, 472, 651, 827, 639, 814, 925, 667, 38, 19, - 425, -82, 474, 313, 475, 647, 476, 602, 603, 426, - 128, 759, 644, 28, 29, 427, 825, 424, 30, 477, + 426, 449, 474, 1183, 475, 119, 476, 46,-32766, 427, + -32766,-32766, 643, 28, 29, 428, 825, 806, 30, 477, + 417, 117, 72, 808, 49, 350, 349,-32766,-32766,-32766, + -32766,-32766,-32766, 480, 200, 1040, 234, 235, 236,-32766, + -32766,-32766,-32766,-32766, 654, 1142, 124,-32766,-32766,-32766, + -32766,-32766, 237, 238, 425, 96, 97, 98, 283,-32766, + 472, 524, 827, 639, 814, 447, 765, 38, 19, 426, + 284, 474, 647, 475, 751, 476, 1183, 332, 427, 231, + 232, 233, 28, 29, 428, 825, 425, 30, 477, 116, + 921, 72, 472, 215, 350, 349, 814, 242, 1040, 38, + 19, 426, 480, 474, 243, 475, 118, 476, 1040, 1068, + 427, 200, 836, 642, 28, 29, 428, 825, 1103, 30, + 477, 296, 115, 72, 207, 123, 350, 349,-32766,-32766, + 498, 827, 639, 432, 480, 206, 213, 214, 215, 442, + 498, 244, 641, 432, 205, 645, 237, 238, 437,-32766, + 332, 456, 20, 461, 595, 425, 200, 130, 359, 766, + 767, 472, 313, 827, 639, 814, 925, 667, 38, 19, + 426, 651, 474, 823, 475, 128, 476, 602, 603, 427, + -82, 759, 644, 28, 29, 428, 825, 425, 30, 477, 937, 657, 72, 472, 301, 350, 349, 814, 102, 299, - 38, 19, 425, 480, 474, 45, 475, 752, 476, 608, - 43, 426, 42, 750, 44, 28, 29, 427, 751, 41, - 30, 477, 51, 48, 72, 444, 633, 350, 349, 754, - 530,-32766, 827, 639, 600, 480, 605, 33, 103, 104, + 38, 19, 426, 480, 474, 45, 475, 752, 476, 608, + 41, 427, 48, 751, 42, 28, 29, 428, 750, 44, + 30, 477, 51, 43, 72, 445, 633, 350, 349, 754, + -32766, 530, 827, 639, 600, 480, 953, 33, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 583, 620, 612, 334, 599, -80, 424, 844, 12, 447, - 279, 1101, 472, 586, 859, 639, 814, 410, 406, 38, - 19, 425, 439, 474, 465, 475, 240, 476, 978, 980, - 426, 330, -499, 0, 28, 29, 427, 0, 327, 30, - 477, 845, 1147, 72, 208, 209, 350, 349, 483, 0, + 583, 620, 612, 334, 586, -80, 425, 845, 448, 12, + 279, 1102, 472, 599, 859, 639, 814, 410, 406, 38, + 19, 426, 440, 474, 466, 475, 240, 476, 979, 981, + 427, 330, -501, 0, 28, 29, 428, 0, 327, 30, + 477, 844, 1148, 72, 208, 209, 350, 349, 483, 0, 210, 328, 211, -500, 480, 308, 310, 0, 0, 0, 0, 0, 0, 0, 202, 9, 0, 0, 4, 208, - 209, 357, 1090, 1091, -408, 210,-32766, 211, -400, 3, - 1092, 11, -409, 827, 639, 838, -219, 411, 532, 202, - 441, 393, 385, 384, 372, 1043, 0, 1090, 1091, 813, - -499,-32766, 662, 661, 37, 1092, 36, 763, 762, 929, + 209, 357, 1091, 1092, -409, 210,-32766, 211, -401, 3, + 1093, 11, -410, 827, 639, 838, -219, 411, 532, 202, + 442, 393, 385, 384, 372, 1044, 0, 1091, 1092, 813, + -500,-32766, 662, 661, 37, 1093, 36, 763, 762, 929, 805, 931, 807, 809, 821, 764, 810, 930, 932, 933, - 0, 855, 857, 860, 799, 867, 866, 569, 875, 1096, - 1097, 1098, 1099, 1093, 1094, 383, 816, 801, 822, 1019, - 325, 1100, 1095, 324, 122, 75, 1037, 405, 212, 666, - -32766, 665, 569, 664, 1096, 1097, 1098, 1099, 1093, 1094, - 383, 659, 656, 655, 653, 652, 1100, 1095, 650, 640, - 1018, 938, 606, 212, 830,-32766, 865, 839, 864, 768, - 769, 459, 1213, 1183, 1181, 1166, 1179, 1081, 914, 1187, - 1177, 1053, 840, 841, 1042, 1041, 832, 1215, 760, 761, - 1216, 797, 663, 771, 770, 842, 0, 305, 304, 303, - 336, 302, 290, 22, 25, 289, 408, 413, 281, 203, - 26, 35, 40, 74, 73,-32766, 0, 573, 1083, 1106, - 904, 1047, 1044, 630, 563, 470, 464, 463, 456, 378, - 16, 15, 14, -218, 0, 0, -418, 0, 1161, 1160, - 1107, 1211, 1080, 1178, 1048, 1165, 1180, 1066, 1051, 1052, - 1049, 1050, 0, 1146 + 0, 855, 857, 860, 799, 867, 866, 569, 875, 1097, + 1098, 1099, 1100, 1094, 1095, 383, 816, 801, 822, 1020, + 325, 1101, 1096, 324, 122, 75, 1038, 405, 212, 666, + -32766, 665, 569, 664, 1097, 1098, 1099, 1100, 1094, 1095, + 383, 659, 656, 655, 653, 652, 1101, 1096, 650, 640, + 1019, 938, 606, 212, 830,-32766, 865, 839, 864, 768, + 769, 460, 1214, 1184, 1182, 1167, 1180, 1082, 914, 1188, + 1178, 1054, 840, 841, 1043, 1042, 832, 1216, 760, 761, + 1217, 797, 663, 771, 770, 842, 0, 305, 304, 303, + 336, 302, 290, 22, 25, 289, 408, 414, 281, 203, + 26, 35, 40, 74, 73,-32766, 0, 573, 1084, 1107, + 904, 1048, 1045, 630, 563, 470, 465, 464, 457, 378, + 16, 15, 14, -218, 0, 0, -419, 0, 1162, 1161, + 1108, 1212, 1081, 1179, 1049, 1166, 1181, 1067, 1052, 1053, + 1050, 1051, 0, 1147 ); protected $actionCheck = array( @@ -455,12 +455,12 @@ class Php5 extends \PhpParser\ParserAbstract 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 254, 179, 482, 460, 702, 704, 705, 706, 683, - 656, 727, 772, 773, 641, 774, 775, 776, 777, 778, + 656, 727, 772, 773, 636, 774, 775, 776, 777, 778, 771, 779, 757, 780, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, -3, 354, 383, 413, 206, - 524, 521, 521, 521, 521, 521, 521, 521, 175, 175, + 524, 618, 618, 618, 618, 618, 618, 618, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 175, 403, 618, 618, 618, 573, + 175, 175, 175, 175, 175, 403, 521, 521, 521, 573, 737, 496, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, @@ -473,37 +473,37 @@ class Php5 extends \PhpParser\ParserAbstract 487, 487, 487, 487, 487, 487, 487, 487, 487, 387, 156, 814, 130, 130, 130, 130, 243, 469, 207, 207, 207, 643, 847, 243, 248, 248, 248, 476, 476, 476, - 76, 638, 296, 296, 547, 547, 547, 477, 477, 477, - 477, 483, 736, 639, 477, 477, 477, 362, 97, 334, - 657, 768, 648, 766, 508, 680, 96, 611, 681, 660, + 76, 639, 296, 296, 547, 547, 547, 477, 477, 477, + 477, 483, 736, 638, 477, 477, 477, 362, 97, 334, + 648, 768, 657, 766, 508, 680, 96, 611, 681, 660, 407, 569, 571, 561, 676, 406, 800, -6, 407, 254, - 532, 447, 630, 691, 268, 700, 193, 408, 363, 523, - 430, 137, 734, 699, 815, 758, 232, 321, 665, 630, - 630, 630, 74, 84, 731, 738, 430, 273, 570, 570, + 532, 447, 630, 691, 408, 700, 268, 193, 363, 523, + 430, 232, 734, 699, 815, 758, 137, 321, 644, 630, + 630, 630, 13, 84, 731, 738, 430, 273, 570, 570, 570, 570, 794, 609, 570, 570, 570, 570, 793, 769, - 432, 38, 770, 13, 701, 631, 631, 626, 626, 631, - 631, 631, 631, 567, 631, 809, 802, 802, 626, 640, - 626, 647, 567, 811, 811, 811, 811, 626, 567, 626, - 626, 631, 626, 802, 802, 567, 621, 802, 427, 567, - 652, 631, 617, 617, 811, 695, 694, 626, 626, 664, - 802, 802, 802, 664, 567, 811, 615, 678, 67, 802, - 811, 634, 640, 634, 615, 567, 634, 647, 640, 640, - 634, 54, 632, 642, 810, 813, 805, 760, 624, 658, - 804, 801, 812, 807, 803, 533, 682, 707, 708, 610, - 635, 633, 637, 628, 677, 646, 667, 660, 684, 622, - 622, 622, 644, 666, 644, 622, 622, 622, 622, 622, + 38, 432, 770, 74, 701, 626, 626, 631, 631, 626, + 626, 626, 626, 647, 567, 626, 809, 802, 802, 631, + 640, 631, 647, 567, 811, 811, 811, 811, 631, 567, + 631, 631, 626, 631, 802, 802, 567, 621, 802, 427, + 567, 652, 626, 617, 617, 811, 695, 694, 631, 631, + 664, 802, 802, 802, 664, 567, 811, 615, 678, 67, + 802, 811, 623, 640, 623, 615, 567, 623, 640, 640, + 623, 54, 641, 633, 810, 813, 805, 760, 658, 624, + 804, 801, 812, 807, 803, 634, 682, 707, 708, 597, + 637, 646, 642, 628, 677, 635, 667, 660, 684, 622, + 622, 622, 665, 666, 665, 622, 622, 622, 622, 622, 622, 622, 622, 839, 669, 672, 668, 629, 730, 619, - 688, 655, 599, 752, 612, 682, 682, 791, 820, 827, - 832, 732, 620, 800, 822, 644, 846, 698, 119, 572, - 798, 792, 687, 686, 644, 797, 644, 744, 644, 819, + 688, 654, 610, 752, 612, 682, 682, 791, 820, 827, + 832, 732, 620, 800, 822, 665, 846, 698, 119, 599, + 798, 792, 687, 686, 665, 797, 665, 744, 665, 819, 790, 682, 789, 622, 818, 845, 844, 843, 842, 841, 840, 833, 838, 645, 837, 729, 653, 826, 168, 808, - 676, 663, 685, 728, 433, 836, 788, 644, 644, 742, - 736, 644, 740, 720, 696, 830, 718, 825, 835, 612, - 824, 644, 662, 834, 433, 636, 625, 674, 649, 717, - 806, 817, 799, 759, 616, 579, 787, 623, 716, 829, - 828, 831, 715, 756, 597, 755, 650, 786, 754, 796, - 714, 785, 767, 821, 651, 684, 679, 661, 654, 627, + 676, 663, 685, 728, 433, 836, 788, 665, 665, 742, + 736, 665, 740, 720, 696, 830, 718, 825, 835, 612, + 824, 665, 662, 834, 433, 533, 625, 674, 649, 717, + 806, 817, 799, 759, 572, 579, 787, 632, 716, 829, + 828, 831, 715, 756, 616, 755, 650, 786, 754, 796, + 714, 785, 767, 821, 651, 684, 679, 661, 655, 627, 753, 784, 823, 713, 711, 710, 764, 709, 761, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -538,12 +538,12 @@ class Php5 extends \PhpParser\ParserAbstract -20, -20, -20, 55, 55, 55, 55, 487, 487, 487, 487, 487, 487, 248, 248, 476, 476, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 487, 55, 487, - 631, 631, 631, 631, 631, 296, 414, 414, 414, 296, - 296, 631, 0, 0, 0, 0, 0, 0, 631, 296, - 0, 0, 631, 631, 631, 631, 631, 631, 631, 631, - 414, 296, 631, 631, 631, 802, 0, 414, 550, 550, - 550, 550, 433, 430, 0, 631, 631, 640, 0, 0, - 0, 0, 802, 0, 626, 0, 0, 0, 0, 0, + 626, 626, 626, 626, 626, 296, 414, 414, 414, 296, + 296, 626, 0, 0, 0, 0, 0, 0, 626, 296, + 0, 0, 626, 626, 626, 626, 626, 626, 626, 626, + 414, 296, 626, 626, 626, 802, 0, 414, 550, 550, + 550, 550, 433, 430, 0, 626, 626, 640, 0, 0, + 0, 0, 802, 0, 631, 0, 0, 0, 0, 0, 622, 119, 0, 246, 0, 0, 0, 0, 0, 0, 620, 246, 322, 322, 0, 0, 645, 622, 622, 622, 0, 0, 620, 620, 0, 0, 0, 0, 0, 0, @@ -554,10 +554,10 @@ class Php5 extends \PhpParser\ParserAbstract 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, 528, 528,32767, 483,32767,32767, - 32767,32767,32767,32767,32767, 289, 289, 289,32767,32767, - 32767, 516, 516, 516, 516, 516, 516, 516, 516, 516, - 516, 516,32767,32767,32767,32767,32767, 371,32767,32767, + 32767,32767,32767,32767, 529, 529,32767, 484,32767,32767, + 32767,32767,32767,32767,32767, 290, 290, 290,32767,32767, + 32767, 517, 517, 517, 517, 517, 517, 517, 517, 517, + 517, 517,32767,32767,32767,32767,32767, 372,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, @@ -565,55 +565,55 @@ 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, 377, 533,32767,32767,32767,32767,32767, + 32767,32767,32767, 378, 534,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767, 352, 353, 355, 356, 288, 517, - 239, 378, 532, 287, 241, 316, 487,32767,32767,32767, - 318, 118, 250, 195, 486, 121, 286, 226, 370, 372, - 317, 293, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 292, 443, 349, 348, 347, 445, - 32767, 444, 480, 480, 483,32767,32767,32767,32767,32767, + 32767,32767,32767,32767, 353, 354, 356, 357, 289, 518, + 239, 379, 533, 288, 241, 317, 488,32767,32767,32767, + 319, 118, 250, 195, 487, 121, 287, 226, 371, 373, + 318, 294, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 293, 444, 350, 349, 348, 446, + 32767, 445, 481, 481, 484,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, 314, 471, 470, 315, 441, - 319, 442, 321, 446, 320, 337, 338, 335, 336, 339, - 448, 447, 464, 465, 462, 463, 291, 340, 341, 342, - 343, 466, 467, 468, 469, 273, 273, 273, 273,32767, - 32767, 527, 527,32767,32767, 328, 329, 455, 456,32767, + 32767,32767,32767,32767,32767, 315, 472, 471, 316, 442, + 320, 443, 322, 447, 321, 338, 339, 336, 337, 340, + 449, 448, 465, 466, 463, 464, 292, 341, 342, 343, + 344, 467, 468, 469, 470, 273, 273, 273, 273,32767, + 32767, 528, 528,32767,32767, 329, 330, 456, 457,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 274,32767, 230, 230, 230, 230, 230,32767,32767,32767, - 32767,32767,32767,32767, 323, 324, 322, 450, 451, 449, - 32767, 417,32767, 419,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 488,32767,32767, - 32767,32767,32767,32767,32767, 501, 406,32767,32767, 399, - 32767, 214, 216, 163, 474,32767,32767,32767,32767,32767, - 32767, 506, 333,32767,32767,32767,32767,32767, 542,32767, - 501,32767,32767,32767,32767,32767,32767,32767, 346, 325, - 326, 327,32767,32767,32767,32767, 505, 499, 458, 459, - 460, 461,32767,32767, 452, 453, 454, 457,32767,32767, + 32767,32767,32767,32767, 324, 325, 323, 451, 452, 450, + 32767, 418,32767, 420,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767, 489,32767,32767, + 32767,32767,32767,32767,32767, 502, 407,32767,32767, 400, + 32767, 214, 216, 163, 475,32767,32767,32767,32767,32767, + 32767, 507, 334,32767,32767,32767,32767,32767, 543,32767, + 502,32767,32767,32767,32767,32767,32767,32767, 347, 326, + 327, 328,32767,32767,32767,32767, 506, 500, 459, 460, + 461, 462,32767,32767, 453, 454, 455, 458,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767, 167,32767, 414, 420, 420,32767,32767, - 32767,32767, 167,32767,32767,32767,32767,32767, 167,32767, - 32767,32767,32767, 504, 503, 167,32767, 400, 482, 167, - 180,32767, 178, 178,32767, 200, 200,32767,32767, 182, - 475, 494,32767, 182, 167,32767, 388, 169, 482,32767, - 32767, 232,32767, 232, 388, 167, 232,32767,32767,32767, - 232,32767, 83, 424,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 401,32767,32767,32767, - 367, 368, 477, 490,32767, 491,32767, 399,32767, 331, - 332, 334, 311,32767, 313, 357, 358, 359, 360, 361, - 362, 363, 365,32767,32767, 404, 407,32767,32767,32767, - 85, 110, 249,32767, 540, 85, 402,32767,32767, 296, - 540,32767,32767,32767,32767, 535,32767,32767, 290,32767, - 32767,32767, 85, 85, 245,32767, 165,32767, 525,32767, - 499, 403,32767, 330,32767,32767,32767,32767,32767,32767, - 32767,32767,32767, 500,32767,32767,32767,32767, 221,32767, - 437,32767, 85,32767, 181,32767,32767, 294, 240,32767, - 32767, 534,32767,32767,32767,32767,32767,32767,32767,32767, - 32767, 166,32767,32767, 183,32767,32767, 499,32767,32767, - 32767,32767,32767,32767,32767, 285,32767,32767,32767,32767, - 32767, 499,32767,32767, 225,32767,32767,32767,32767,32767, + 32767,32767,32767,32767, 167,32767, 415, 421, 421,32767, + 32767,32767,32767, 167,32767,32767,32767,32767,32767, 167, + 32767,32767,32767,32767, 505, 504, 167,32767, 401, 483, + 167, 180,32767, 178, 178,32767, 200, 200,32767,32767, + 182, 476, 495,32767, 182, 167,32767, 389, 169, 483, + 32767,32767, 232,32767, 232, 389, 167, 232,32767,32767, + 232,32767, 83, 425,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 402,32767,32767,32767, + 368, 369, 478, 491,32767, 492,32767, 400,32767, 332, + 333, 335, 312,32767, 314, 358, 359, 360, 361, 362, + 363, 364, 366,32767,32767, 405, 408,32767,32767,32767, + 85, 110, 249,32767, 541, 85, 403,32767,32767, 297, + 541,32767,32767,32767,32767, 536,32767,32767, 291,32767, + 32767,32767, 85, 85, 245,32767, 165,32767, 526,32767, + 500, 404,32767, 331,32767,32767,32767,32767,32767,32767, + 32767,32767,32767, 501,32767,32767,32767,32767, 221,32767, + 438,32767, 85,32767, 181,32767,32767, 295, 240,32767, + 32767, 535,32767,32767,32767,32767,32767,32767,32767,32767, + 32767, 166,32767,32767, 183,32767,32767, 500,32767,32767, + 32767,32767,32767,32767,32767, 286,32767,32767,32767,32767, + 32767, 500,32767,32767, 225,32767,32767,32767,32767,32767, 32767,32767,32767,32767, 83, 60,32767, 267,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767, 123, 123, 3, 123, 123, 3, 123, 123, 123, 123, 123, @@ -626,7 +626,7 @@ class Php5 extends \PhpParser\ParserAbstract 144, 181, 162, 158, 158, 158, 158, 139, 139, 159, 159, 159, 159, 159, 159, 159, 159, 159, 159, 159, 154, 155, 156, 157, 178, 133, 179, 499, 500, 362, - 501, 505, 506, 507, 508, 509, 510, 511, 512, 965, + 501, 505, 506, 507, 508, 509, 510, 511, 512, 966, 138, 140, 141, 143, 165, 170, 180, 196, 245, 248, 250, 252, 254, 255, 256, 257, 258, 259, 267, 268, 269, 270, 285, 286, 314, 315, 316, 379, 380, 381, @@ -637,55 +637,55 @@ class Php5 extends \PhpParser\ParserAbstract 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, 1103, 756, 1103, 1103, 1103, - 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, - 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, - 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, - 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, - 635, 888, 888, 1194, 1194, 529, 1172, 168, 1172, 515, - 787, 515, 171, 172, 173, 388, 389, 390, 391, 167, + 571, 571, 571, 571, 571, 1104, 756, 1104, 1104, 1104, + 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, + 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, + 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, + 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, + 635, 888, 888, 1195, 1195, 529, 6, 168, 1173, 515, + 1173, 515, 171, 172, 173, 388, 389, 390, 391, 167, 195, 199, 201, 249, 251, 253, 260, 261, 262, 263, 264, 265, 271, 272, 273, 274, 287, 288, 317, 318, 319, 394, 395, 396, 397, 169, 174, 246, 247, 175, - 176, 177, 503, 503, 503, 503, 503, 503, 6, 587, - 590, 632, 503, 503, 503, 503, 503, 503, 503, 503, - 503, 503, 514, 634, 514, 387, 611, 548, 548, 577, + 176, 177, 503, 503, 503, 503, 503, 503, 594, 344, + 404, 341, 503, 503, 503, 503, 503, 503, 503, 503, + 503, 503, 514, 787, 514, 387, 611, 548, 548, 577, 544, 584, 609, 793, 755, 546, 546, 502, 504, 535, - 550, 578, 581, 591, 597, 874, 818, 854, 341, 658, - 906, 517, 883, 878, 570, 858, 570, 570, 570, 570, + 550, 578, 581, 591, 597, 874, 516, 854, 516, 658, + 634, 517, 883, 878, 570, 818, 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, 593, 1079, - 1078, 554, 520, 1164, 1198, 528, 525, 525, 525, 450, - 452, 936, 637, 525, 549, 1104, 619, 934, 528, 528, - 1061, 323, 312, 437, 437, 437, 437, 437, 437, 543, - 525, 363, 601, 437, 437, 437, 437, 437, 437, 437, - 437, 437, 437, 1068, 1152, 1068, 895, 895, 895, 895, - 895, 610, 1191, 541, 780, 660, 566, 895, 598, 871, + 556, 557, 558, 559, 560, 561, 562, 564, 593, 323, + 312, 554, 520, 1165, 858, 528, 525, 525, 525, 451, + 453, 936, 637, 525, 906, 1105, 619, 934, 528, 528, + 1062, 1080, 1079, 438, 438, 438, 438, 438, 438, 543, + 525, 1199, 549, 438, 438, 438, 438, 438, 438, 438, + 438, 438, 438, 1069, 1153, 1069, 895, 895, 895, 895, + 895, 363, 601, 541, 780, 660, 566, 895, 598, 871, 885, 616, 870, 617, 881, 621, 622, 629, 631, 636, - 638, 852, 852, 852, 852, 1084, 375, 1012, 847, 853, - 469, 780, 780, 1022, 17, 13, 355, 525, 525, 963, - 892, 542, 572, 525, 525, 614, 525, 347, 356, 1064, - 1065, 1060, 623, 1061, 565, 533, 594, 344, 404, 545, - 370, 370, 370, 526, 901, 21, 1062, 1163, 1062, 1171, - 607, 1171, 398, 551, 457, 1063, 776, 369, 1188, 1188, - 1188, 276, 277, 278, 370, 10, 1186, 1186, 1186, 773, - 773, 386, 373, 781, 781, 781, 783, 774, 772, 1204, - 1204, 910, 1170, 342, 343, 1205, 1205, 615, 402, 552, - 618, 1204, 576, 516, 360, 516, 646, 1205, 1054, 915, - 1059, 1207, 784, 862, 453, 582, 1149, 466, 952, 0, - 0, 0, 0, 0, 540, 0, 944, 0, 0, 0, + 638, 852, 852, 852, 852, 1172, 610, 1172, 847, 853, + 469, 780, 780, 1192, 1189, 1189, 1189, 525, 525, 964, + 375, 542, 572, 525, 525, 892, 356, 525, 1013, 901, + 1065, 1066, 1085, 533, 1062, 347, 552, 545, 1171, 576, + 1023, 17, 13, 355, 526, 342, 343, 1063, 1164, 1063, + 1206, 1206, 458, 398, 551, 776, 1064, 370, 370, 370, + 373, 565, 1206, 10, 944, 369, 1187, 1187, 1187, 773, + 773, 774, 21, 781, 781, 781, 783, 607, 910, 772, + 614, 370, 1205, 1205, 615, 1061, 623, 618, 386, 402, + 360, 587, 590, 632, 1205, 276, 277, 278, 1055, 646, + 784, 1060, 915, 454, 1208, 862, 582, 952, 1150, 467, + 0, 0, 0, 0, 540, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 519, 539, 0, 0, 0, - 0, 0, 534, 0, 0, 0, 519, 0, 539, 0, - 0, 0, 0, 0, 0, 518, 0, 523, 440, 0, - 442, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 1212 + 0, 0, 0, 534, 0, 0, 0, 519, 0, 539, + 0, 0, 0, 0, 0, 0, 518, 0, 523, 441, + 0, 443, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 779, 1213 ); protected $gotoCheck = array( @@ -700,93 +700,95 @@ class Php5 extends \PhpParser\ParserAbstract 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 55, - 114, 14, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 121, 13, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, - 8, 72, 72, 72, 72, 95, 112, 25, 112, 114, - 27, 114, 25, 25, 25, 25, 25, 25, 25, 25, + 115, 14, 115, 115, 115, 115, 115, 115, 115, 115, + 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, + 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, + 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, + 115, 115, 115, 115, 115, 122, 13, 122, 122, 122, + 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, + 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, + 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, + 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, + 8, 72, 72, 72, 72, 96, 92, 25, 113, 115, + 113, 115, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 111, 111, 111, 111, 111, 111, 92, 58, - 58, 58, 111, 111, 111, 111, 111, 111, 111, 111, - 111, 111, 111, 5, 111, 49, 49, 49, 49, 49, + 25, 25, 112, 112, 112, 112, 112, 112, 65, 65, + 65, 67, 112, 112, 112, 112, 112, 112, 112, 112, + 112, 112, 112, 27, 112, 49, 49, 49, 49, 49, 49, 38, 38, 12, 12, 49, 49, 49, 49, 49, - 49, 49, 49, 49, 49, 12, 48, 12, 67, 12, - 79, 12, 12, 12, 55, 31, 55, 55, 55, 55, + 49, 49, 49, 49, 49, 12, 118, 12, 118, 12, + 5, 12, 12, 12, 55, 48, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, - 55, 55, 55, 55, 55, 55, 55, 55, 55, 104, - 104, 104, 104, 104, 104, 104, 104, 104, 104, 119, - 119, 42, 9, 77, 135, 42, 9, 9, 9, 7, - 7, 7, 7, 9, 103, 7, 7, 7, 42, 42, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 105, + 105, 105, 105, 105, 105, 105, 105, 105, 105, 121, + 121, 42, 9, 77, 31, 42, 9, 9, 9, 7, + 7, 7, 7, 9, 79, 7, 7, 7, 42, 42, 77, 120, 120, 55, 55, 55, 55, 55, 55, 9, - 9, 45, 122, 55, 55, 55, 55, 55, 55, 55, - 55, 55, 55, 55, 126, 55, 55, 55, 55, 55, - 55, 47, 133, 30, 21, 30, 30, 55, 30, 30, + 9, 136, 104, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 127, 55, 55, 55, 55, 55, + 55, 45, 123, 30, 21, 30, 30, 55, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, - 30, 55, 55, 55, 55, 32, 46, 96, 55, 55, - 55, 21, 21, 32, 32, 32, 32, 9, 9, 95, - 74, 9, 9, 9, 9, 11, 9, 16, 56, 77, - 77, 11, 11, 77, 32, 56, 65, 65, 65, 56, - 118, 118, 118, 9, 76, 32, 77, 77, 77, 113, - 32, 113, 20, 9, 56, 77, 23, 10, 113, 113, - 113, 63, 63, 63, 118, 56, 8, 8, 8, 21, - 21, 118, 15, 21, 21, 21, 21, 22, 21, 136, - 136, 80, 113, 67, 67, 137, 137, 59, 19, 2, - 59, 136, 2, 117, 59, 117, 69, 137, 107, 81, - 109, 136, 24, 66, 61, 62, 125, 102, 94, -1, - -1, -1, -1, -1, 8, -1, 92, -1, -1, -1, + 30, 55, 55, 55, 55, 114, 47, 114, 55, 55, + 55, 21, 21, 134, 114, 114, 114, 9, 9, 96, + 46, 9, 9, 9, 9, 74, 56, 9, 97, 76, + 77, 77, 32, 56, 77, 16, 2, 56, 114, 2, + 32, 32, 32, 32, 9, 67, 67, 77, 77, 77, + 138, 138, 56, 20, 9, 23, 77, 119, 119, 119, + 15, 32, 138, 56, 92, 10, 8, 8, 8, 21, + 21, 22, 32, 21, 21, 21, 21, 32, 80, 21, + 11, 119, 137, 137, 59, 11, 11, 59, 119, 19, + 59, 58, 58, 58, 137, 63, 63, 63, 108, 69, + 24, 110, 81, 61, 137, 66, 62, 94, 126, 103, + -1, -1, -1, -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, 8, 8, -1, -1, -1, - -1, -1, 95, -1, -1, -1, 8, -1, 8, -1, - -1, -1, -1, -1, -1, 8, -1, 8, 8, -1, - 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 8, 8 + -1, -1, -1, 96, -1, -1, -1, 8, -1, 8, + -1, -1, -1, -1, -1, -1, 8, -1, 8, 8, + -1, 8, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 8, 8 ); protected $gotoBase = array( - 0, 0, -122, 0, 0, 261, 0, 366, 188, 42, - 156, -7, 282, 154, 109, 155, 137, 0, 0, 112, - 157, 94, 159, 160, 114, 7, 0, 202, 0, 0, - -227, 287, 20, 0, 0, 0, 0, 0, 245, 0, - 0, -22, 339, 0, 0, 353, 146, 131, 280, -4, - 0, 0, 0, 0, 0, 104, 30, 0, -44, 54, - 0, 91, 82, -173, 0, 138, 113, -148, 0, 167, - 0, 0, -78, 0, 144, 0, 161, 26, 0, 277, - 153, 110, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 246, 0, 71, 166, 136, 0, 0, 0, - 0, 0, 73, 349, 307, 0, 0, 111, 0, 108, - 0, -27, -93, 180, -90, 0, 0, 224, 162, 50, - 60, -45, 189, 0, 0, 78, 200, 0, 0, 0, - 0, 0, 0, 130, 0, 337, 198, 204, 0, 0 + 0, 0, -175, 0, 0, 288, 0, 366, 188, 42, + 164, 47, 282, 154, 109, 143, 145, 0, 0, 113, + 158, 94, 153, 159, 111, 7, 0, 265, 0, 0, + -227, 346, 46, 0, 0, 0, 0, 0, 245, 0, + 0, -22, 339, 0, 0, 373, 160, 156, 289, -4, + 0, 0, 0, 0, 0, 104, 27, 0, 218, 50, + 0, 89, 82, -139, 0, -70, 114, -186, 0, 170, + 0, 0, -78, 0, 149, 0, 146, 26, 0, 351, + 150, 112, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 194, 0, 115, 0, 166, 157, 0, 0, + 0, 0, 0, 74, 367, 307, 0, 0, 110, 0, + 108, 0, -27, -91, 136, -90, 0, 0, -3, 179, + 72, 38, -45, 209, 0, 0, 79, 200, 0, 0, + 0, 0, 0, 0, 161, 0, 364, 201, 169, 0, + 0 ); protected $gotoDefault = array( -32768, 471, 669, 2, 670, 741, 749, 604, 485, 486, 521, 522, 856, 794, 795, 365, 412, 487, 364, 399, 392, 782, 775, 777, 785, 166, 400, 788, 1, 790, - 527, 826, 1013, 351, 798, 352, 596, 800, 537, 802, + 527, 826, 1014, 351, 798, 352, 596, 800, 537, 802, 803, 132, 488, 366, 367, 538, 374, 585, 817, 266, - 371, 819, 353, 820, 829, 354, 468, 462, 567, 613, - 432, 449, 579, 275, 547, 574, 861, 340, 869, 649, - 877, 880, 489, 568, 891, 454, 899, 1089, 382, 905, - 911, 916, 919, 421, 401, 592, 923, 924, 5, 928, - 627, 628, 943, 300, 951, 964, 417, 1032, 1034, 490, - 491, 531, 461, 513, 536, 492, 1055, 443, 403, 1058, - 493, 494, 433, 434, 1076, 1073, 346, 1157, 345, 451, - 311, 1144, 588, 1108, 458, 1197, 1153, 337, 495, 496, - 361, 1176, 376, 1192, 438, 1199, 1206, 333, 368, 575 + 371, 819, 353, 820, 829, 354, 468, 463, 567, 613, + 433, 450, 579, 275, 547, 574, 861, 340, 869, 649, + 877, 880, 489, 568, 891, 455, 899, 1090, 382, 905, + 911, 916, 919, 413, 401, 592, 923, 924, 5, 928, + 627, 628, 943, 300, 951, 605, 965, 418, 1033, 1035, + 490, 491, 531, 462, 513, 536, 492, 1056, 444, 403, + 1059, 493, 494, 434, 435, 1077, 1074, 346, 1158, 345, + 452, 311, 1145, 588, 1109, 459, 1198, 1154, 337, 495, + 496, 361, 1177, 376, 1193, 439, 1200, 1207, 333, 368, + 575 ); protected $ruleToNonTerminal = array( @@ -818,8 +820,8 @@ class Php5 extends \PhpParser\ParserAbstract 81, 63, 63, 82, 82, 82, 82, 87, 87, 88, 88, 89, 89, 89, 89, 89, 90, 91, 91, 86, 86, 83, 83, 85, 85, 93, 93, 92, 92, 92, - 92, 92, 92, 84, 84, 94, 94, 45, 45, 38, - 38, 41, 41, 41, 41, 41, 41, 41, 41, 41, + 92, 92, 92, 84, 84, 95, 94, 94, 45, 45, + 38, 38, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, @@ -827,25 +829,25 @@ class Php5 extends \PhpParser\ParserAbstract 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, - 41, 41, 41, 41, 41, 32, 32, 42, 42, 99, - 99, 100, 100, 100, 100, 106, 95, 95, 102, 102, - 108, 108, 109, 110, 110, 110, 110, 110, 110, 114, - 114, 55, 55, 55, 96, 96, 115, 115, 111, 111, - 116, 116, 116, 116, 97, 97, 97, 101, 101, 101, - 107, 107, 121, 121, 121, 121, 121, 121, 121, 121, - 121, 121, 121, 121, 121, 25, 25, 25, 25, 25, - 25, 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, 105, 105, 98, 98, 98, 98, - 122, 122, 125, 125, 124, 124, 126, 126, 49, 49, - 49, 49, 128, 128, 127, 127, 127, 127, 127, 129, - 129, 113, 113, 117, 117, 112, 112, 131, 130, 130, - 130, 130, 118, 118, 118, 118, 104, 104, 119, 119, - 119, 119, 72, 132, 132, 133, 133, 133, 103, 103, - 134, 134, 135, 135, 135, 135, 120, 120, 120, 120, - 137, 138, 136, 136, 136, 136, 136, 136, 136, 139, - 139, 139 + 41, 41, 41, 41, 41, 41, 32, 32, 42, 42, + 100, 100, 101, 101, 101, 101, 107, 96, 96, 103, + 103, 109, 109, 110, 111, 111, 111, 111, 111, 111, + 115, 115, 55, 55, 55, 97, 97, 116, 116, 112, + 112, 117, 117, 117, 117, 98, 98, 98, 102, 102, + 102, 108, 108, 122, 122, 122, 122, 122, 122, 122, + 122, 122, 122, 122, 122, 122, 25, 25, 25, 25, + 25, 25, 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, 106, 106, 99, 99, 99, + 99, 123, 123, 126, 126, 125, 125, 127, 127, 49, + 49, 49, 49, 129, 129, 128, 128, 128, 128, 128, + 130, 130, 114, 114, 118, 118, 113, 113, 132, 131, + 131, 131, 131, 119, 119, 119, 119, 105, 105, 120, + 120, 120, 120, 72, 133, 133, 134, 134, 134, 104, + 104, 135, 135, 136, 136, 136, 136, 121, 121, 121, + 121, 138, 139, 137, 137, 137, 137, 137, 137, 137, + 140, 140, 140 ); protected $ruleToLength = array( @@ -877,34 +879,34 @@ class Php5 extends \PhpParser\ParserAbstract 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, 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, + 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, 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 ); protected function reduceRule0() { @@ -2054,27 +2056,27 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule285() { - $this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = ($this->useIdentifierNodes ? new Node\Identifier(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : substr($this->semStack[$this->stackPos-(1-1)], 1)); } protected function reduceRule286() { - $this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(3-1)], 1), $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Stmt\PropertyProperty($this->semStack[$this->stackPos-(1-1)], null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule287() { - $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; + $this->semValue = new Stmt\PropertyProperty($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule288() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; } protected function reduceRule289() { - $this->semValue = array(); + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } protected function reduceRule290() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = array(); } protected function reduceRule291() { @@ -2082,7 +2084,7 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule292() { - $this->semValue = new Expr\Assign($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule293() { @@ -2090,7 +2092,7 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule294() { - $this->semValue = new Expr\AssignRef($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Assign($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule295() { @@ -2098,289 +2100,289 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule296() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\AssignRef($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule297() { - $this->semValue = new Expr\Clone_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule298() { - $this->semValue = new Expr\AssignOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule299() { - $this->semValue = new Expr\AssignOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule300() { - $this->semValue = new Expr\AssignOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule301() { - $this->semValue = new Expr\AssignOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule302() { - $this->semValue = new Expr\AssignOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule303() { - $this->semValue = new Expr\AssignOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule304() { - $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule305() { - $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule306() { - $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule307() { - $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule308() { - $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule309() { - $this->semValue = new Expr\AssignOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule310() { - $this->semValue = new Expr\PostInc($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule311() { - $this->semValue = new Expr\PreInc($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule312() { - $this->semValue = new Expr\PostDec($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule313() { - $this->semValue = new Expr\PreDec($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule314() { - $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule315() { - $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule316() { - $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule317() { - $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule318() { - $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule319() { - $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule320() { - $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule321() { - $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule322() { - $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule323() { - $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule324() { - $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule325() { - $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule326() { - $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule327() { - $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule328() { - $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule329() { - $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule330() { - $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule331() { - $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule332() { - $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule333() { - $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule334() { - $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule335() { - $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule336() { - $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule337() { - $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule338() { - $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule339() { - $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule340() { - $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule341() { - $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule342() { - $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule343() { - $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule344() { - $this->semValue = new Expr\Instanceof_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule345() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } + protected function reduceRule298() { + $this->semValue = new Expr\Clone_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule299() { + $this->semValue = new Expr\AssignOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule300() { + $this->semValue = new Expr\AssignOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule301() { + $this->semValue = new Expr\AssignOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule302() { + $this->semValue = new Expr\AssignOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule303() { + $this->semValue = new Expr\AssignOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule304() { + $this->semValue = new Expr\AssignOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule305() { + $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule306() { + $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule307() { + $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule308() { + $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule309() { + $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule310() { + $this->semValue = new Expr\AssignOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule311() { + $this->semValue = new Expr\PostInc($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule312() { + $this->semValue = new Expr\PreInc($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule313() { + $this->semValue = new Expr\PostDec($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule314() { + $this->semValue = new Expr\PreDec($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule315() { + $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule316() { + $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule317() { + $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule318() { + $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule319() { + $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule320() { + $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule321() { + $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule322() { + $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule323() { + $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule324() { + $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule325() { + $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule326() { + $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule327() { + $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule328() { + $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule329() { + $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule330() { + $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule331() { + $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule332() { + $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule333() { + $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule334() { + $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule335() { + $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule336() { + $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule337() { + $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule338() { + $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule339() { + $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule340() { + $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule341() { + $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule342() { + $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule343() { + $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule344() { + $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule345() { + $this->semValue = new Expr\Instanceof_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + protected function reduceRule346() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule347() { - $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } protected function reduceRule348() { - $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes); } protected function reduceRule349() { - $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule350() { - $this->semValue = new Expr\Isset_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule351() { - $this->semValue = new Expr\Empty_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Isset_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule352() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Empty_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule353() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule354() { - $this->semValue = new Expr\Eval_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule355() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Eval_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule356() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule357() { - $this->semValue = new Expr\Cast\Int_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule358() { - $this->semValue = new Expr\Cast\Double($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Int_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule359() { - $this->semValue = new Expr\Cast\String_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Double($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule360() { - $this->semValue = new Expr\Cast\Array_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\String_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule361() { - $this->semValue = new Expr\Cast\Object_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Array_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule362() { - $this->semValue = new Expr\Cast\Bool_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Object_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule363() { - $this->semValue = new Expr\Cast\Unset_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Bool_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule364() { + $this->semValue = new Expr\Cast\Unset_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule365() { $attrs = $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strtolower($this->semStack[$this->stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE; $this->semValue = new Expr\Exit_($this->semStack[$this->stackPos-(2-2)], $attrs); } - protected function reduceRule365() { - $this->semValue = new Expr\ErrorSuppress($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - protected function reduceRule366() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\ErrorSuppress($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule367() { @@ -2392,31 +2394,31 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule369() { - $this->semValue = new Expr\ShellExec($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule370() { - $this->semValue = new Expr\Print_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\ShellExec($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule371() { - $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\Print_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule372() { - $this->semValue = new Expr\YieldFrom($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule373() { - $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$this->stackPos-(10-2)], 'params' => $this->semStack[$this->stackPos-(10-4)], 'uses' => $this->semStack[$this->stackPos-(10-6)], 'returnType' => $this->semStack[$this->stackPos-(10-7)], 'stmts' => $this->semStack[$this->stackPos-(10-9)]], $this->startAttributeStack[$this->stackPos-(10-1)] + $this->endAttributes); + $this->semValue = new Expr\YieldFrom($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule374() { - $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$this->stackPos-(11-3)], 'params' => $this->semStack[$this->stackPos-(11-5)], 'uses' => $this->semStack[$this->stackPos-(11-7)], 'returnType' => $this->semStack[$this->stackPos-(11-8)], 'stmts' => $this->semStack[$this->stackPos-(11-10)]], $this->startAttributeStack[$this->stackPos-(11-1)] + $this->endAttributes); + $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$this->stackPos-(10-2)], 'params' => $this->semStack[$this->stackPos-(10-4)], 'uses' => $this->semStack[$this->stackPos-(10-6)], 'returnType' => $this->semStack[$this->stackPos-(10-7)], 'stmts' => $this->semStack[$this->stackPos-(10-9)]], $this->startAttributeStack[$this->stackPos-(10-1)] + $this->endAttributes); } protected function reduceRule375() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$this->stackPos-(11-3)], 'params' => $this->semStack[$this->stackPos-(11-5)], 'uses' => $this->semStack[$this->stackPos-(11-7)], 'returnType' => $this->semStack[$this->stackPos-(11-8)], 'stmts' => $this->semStack[$this->stackPos-(11-10)]], $this->startAttributeStack[$this->stackPos-(11-1)] + $this->endAttributes); } protected function reduceRule376() { @@ -2424,34 +2426,34 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule377() { - $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(2-2)], null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } protected function reduceRule378() { - $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-2)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(2-2)], null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule379() { + $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-2)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + } + + protected function reduceRule380() { $attrs = $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_LONG; $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(4-3)], $attrs); } - protected function reduceRule380() { + protected function reduceRule381() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_SHORT; $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(3-2)], $attrs); } - protected function reduceRule381() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); - } - protected function reduceRule382() { - $attrs = $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$this->stackPos-(4-1)][0] === "'" || ($this->semStack[$this->stackPos-(4-1)][1] === "'" && ($this->semStack[$this->stackPos-(4-1)][0] === 'b' || $this->semStack[$this->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[$this->stackPos-(4-1)]), $attrs), $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule383() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $attrs = $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$this->stackPos-(4-1)][0] === "'" || ($this->semStack[$this->stackPos-(4-1)][1] === "'" && ($this->semStack[$this->stackPos-(4-1)][0] === 'b' || $this->semStack[$this->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[$this->stackPos-(4-1)]), $attrs), $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule384() { @@ -2459,51 +2461,55 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule385() { + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + } + + protected function reduceRule386() { $this->semValue = array(new Stmt\Class_(null, ['type' => 0, 'extends' => $this->semStack[$this->stackPos-(7-3)], 'implements' => $this->semStack[$this->stackPos-(7-4)], 'stmts' => $this->semStack[$this->stackPos-(7-6)]], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(7-2)]); $this->checkClass($this->semValue[0], -1); } - protected function reduceRule386() { + protected function reduceRule387() { $this->semValue = new Expr\New_($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } - protected function reduceRule387() { + protected function reduceRule388() { list($class, $ctorArgs) = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule388() { + protected function reduceRule389() { $this->semValue = array(); } - protected function reduceRule389() { + protected function reduceRule390() { $this->semValue = $this->semStack[$this->stackPos-(4-3)]; } - protected function reduceRule390() { + protected function reduceRule391() { $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } - protected function reduceRule391() { + protected function reduceRule392() { $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; } - protected function reduceRule392() { + protected function reduceRule393() { $this->semValue = new Expr\ClosureUse($this->semStack[$this->stackPos-(2-2)], $this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule393() { + protected function reduceRule394() { $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule394() { + protected function reduceRule395() { $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } - protected function reduceRule395() { + protected function reduceRule396() { $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(6-1)], $this->semStack[$this->stackPos-(6-4)], $this->semStack[$this->stackPos-(6-6)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); } - protected function reduceRule396() { + protected function reduceRule397() { if ($this->semStack[$this->stackPos-(2-1)] instanceof Node\Expr\StaticPropertyFetch) { $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(2-1)]->class, new Expr\Variable($this->semStack[$this->stackPos-(2-1)]->name, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); @@ -2521,36 +2527,32 @@ class Php5 extends \PhpParser\ParserAbstract } - protected function reduceRule397() { + protected function reduceRule398() { $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule398() { + protected function reduceRule399() { $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } - protected function reduceRule399() { - $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); - } - protected function reduceRule400() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule401() { - $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule402() { - $this->semValue = new Name\FullyQualified($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule403() { - $this->semValue = new Name\Relative($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Name\FullyQualified($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule404() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Name\Relative($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule405() { @@ -2574,7 +2576,7 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule410() { - $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule411() { @@ -2582,7 +2584,7 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule412() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule413() { @@ -2590,7 +2592,7 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule414() { - $this->semValue = null; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule415() { @@ -2598,276 +2600,276 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule416() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = null; } protected function reduceRule417() { - $this->semValue = array(); - } - - protected function reduceRule418() { - $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$this->stackPos-(1-1)], '`', false), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes)); - } - - protected function reduceRule419() { - foreach ($this->semStack[$this->stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', false); } }; $this->semValue = $this->semStack[$this->stackPos-(1-1)]; - } - - protected function reduceRule420() { - $this->semValue = array(); - } - - protected function reduceRule421() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } + protected function reduceRule418() { + $this->semValue = array(); + } + + protected function reduceRule419() { + $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$this->stackPos-(1-1)], '`', false), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes)); + } + + protected function reduceRule420() { + foreach ($this->semStack[$this->stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', false); } }; $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + } + + protected function reduceRule421() { + $this->semValue = array(); + } + protected function reduceRule422() { - $this->semValue = $this->parseLNumber($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes, true); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule423() { - $this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$this->stackPos-(1-1)]), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->parseLNumber($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes, true); } protected function reduceRule424() { + $this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$this->stackPos-(1-1)]), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + } + + protected function reduceRule425() { $attrs = $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$this->stackPos-(1-1)][0] === "'" || ($this->semStack[$this->stackPos-(1-1)][1] === "'" && ($this->semStack[$this->stackPos-(1-1)][0] === 'b' || $this->semStack[$this->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[$this->stackPos-(1-1)], false), $attrs); } - protected function reduceRule425() { + protected function reduceRule426() { $this->semValue = new Scalar\MagicConst\Line($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule426() { + protected function reduceRule427() { $this->semValue = new Scalar\MagicConst\File($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule427() { + protected function reduceRule428() { $this->semValue = new Scalar\MagicConst\Dir($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule428() { + protected function reduceRule429() { $this->semValue = new Scalar\MagicConst\Class_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule429() { + protected function reduceRule430() { $this->semValue = new Scalar\MagicConst\Trait_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule430() { + protected function reduceRule431() { $this->semValue = new Scalar\MagicConst\Method($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule431() { + protected function reduceRule432() { $this->semValue = new Scalar\MagicConst\Function_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule432() { + protected function reduceRule433() { $this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule433() { + protected function reduceRule434() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->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[$this->stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_(Scalar\String_::parseDocString($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-2)], false), $attrs); } - protected function reduceRule434() { + protected function reduceRule435() { $attrs = $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->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[$this->stackPos-(2-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_('', $attrs); } - protected function reduceRule435() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; - } - protected function reduceRule436() { - $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule437() { - $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); - } - - protected function reduceRule438() { - $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); - } - - protected function reduceRule439() { - $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule440() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; - } - - protected function reduceRule441() { - $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule442() { - $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule443() { - $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule444() { - $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule445() { - $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule446() { - $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule447() { - $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule448() { - $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule449() { - $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule450() { - $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule451() { - $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule452() { - $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule453() { - $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule454() { - $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule455() { - $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule456() { - $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule457() { - $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule458() { - $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule459() { - $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule460() { - $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule461() { - $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule462() { - $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule463() { - $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule464() { - $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule465() { - $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule466() { - $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule467() { - $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule468() { - $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule469() { - $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule470() { - $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes); - } - - protected function reduceRule471() { - $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); - } - - protected function reduceRule472() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); - } - - protected function reduceRule473() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; - } - - protected function reduceRule474() { - $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); - } - - protected function reduceRule475() { $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } - protected function reduceRule476() { + protected function reduceRule438() { + $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + } + + protected function reduceRule439() { + $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + } + + protected function reduceRule440() { + $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule441() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } + protected function reduceRule442() { + $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule443() { + $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule444() { + $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule445() { + $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule446() { + $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule447() { + $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule448() { + $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule449() { + $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule450() { + $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule451() { + $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule452() { + $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule453() { + $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule454() { + $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule455() { + $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule456() { + $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule457() { + $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule458() { + $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule459() { + $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule460() { + $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule461() { + $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule462() { + $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule463() { + $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule464() { + $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule465() { + $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule466() { + $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule467() { + $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule468() { + $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule469() { + $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule470() { + $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule471() { + $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes); + } + + protected function reduceRule472() { + $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + } + + protected function reduceRule473() { + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + } + + protected function reduceRule474() { + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + } + + protected function reduceRule475() { + $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + } + + protected function reduceRule476() { + $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + protected function reduceRule477() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule478() { + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + } + + protected function reduceRule479() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED; foreach ($this->semStack[$this->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[$this->stackPos-(3-2)], $attrs); } - protected function reduceRule479() { + protected function reduceRule480() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->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[$this->stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; foreach ($this->semStack[$this->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[$this->stackPos-(3-2)]);; $this->semValue = new Scalar\Encapsed($this->semStack[$this->stackPos-(3-2)], $attrs); } - protected function reduceRule480() { + protected function reduceRule481() { $this->semValue = array(); } - protected function reduceRule481() { - $this->semValue = $this->semStack[$this->stackPos-(2-1)]; - } - protected function reduceRule482() { - $this->semValue = $this->semStack[$this->stackPos]; + $this->semValue = $this->semStack[$this->stackPos-(2-1)]; } protected function reduceRule483() { @@ -2875,23 +2877,23 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule484() { - $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; + $this->semValue = $this->semStack[$this->stackPos]; } protected function reduceRule485() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; } protected function reduceRule486() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } protected function reduceRule487() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule488() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule489() { @@ -2907,27 +2909,27 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule492() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(6-2)], $this->semStack[$this->stackPos-(6-5)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule493() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(6-2)], $this->semStack[$this->stackPos-(6-5)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); } protected function reduceRule494() { - $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule495() { - $this->semValue = new Expr\MethodCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule496() { - $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\MethodCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule497() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule498() { @@ -2935,23 +2937,23 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule499() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule500() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule501() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } protected function reduceRule502() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule503() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule504() { @@ -2959,27 +2961,27 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule505() { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); - } - - protected function reduceRule506() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } + protected function reduceRule506() { + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + } + protected function reduceRule507() { - $var = substr($this->semStack[$this->stackPos-(1-1)], 1); $this->semValue = \is_string($var) ? ($this->useIdentifierNodes ? new Node\Identifier($var, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : $var) : $var; + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule508() { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $var = substr($this->semStack[$this->stackPos-(1-1)], 1); $this->semValue = \is_string($var) ? ($this->useIdentifierNodes ? new Node\Identifier($var, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : $var) : $var; } protected function reduceRule509() { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(6-1)], $this->semStack[$this->stackPos-(6-5)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule510() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(6-1)], $this->semStack[$this->stackPos-(6-5)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); } protected function reduceRule511() { @@ -2995,19 +2997,19 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule514() { - $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule515() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule516() { - $this->semValue = null; + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule517() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = null; } protected function reduceRule518() { @@ -3015,31 +3017,31 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule519() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; - } - - protected function reduceRule520() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } + protected function reduceRule520() { + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + } + protected function reduceRule521() { - $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule522() { - $this->semValue = new Expr\List_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; } protected function reduceRule523() { - $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; + $this->semValue = new Expr\List_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule524() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; } protected function reduceRule525() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } protected function reduceRule526() { @@ -3047,43 +3049,43 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule527() { - $this->semValue = null; - } - - protected function reduceRule528() { - $this->semValue = array(); - } - - protected function reduceRule529() { - $this->semValue = $this->semStack[$this->stackPos-(2-1)]; - } - - protected function reduceRule530() { - $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; - } - - protected function reduceRule531() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); - } - - protected function reduceRule532() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); - } - - protected function reduceRule533() { $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } + protected function reduceRule528() { + $this->semValue = null; + } + + protected function reduceRule529() { + $this->semValue = array(); + } + + protected function reduceRule530() { + $this->semValue = $this->semStack[$this->stackPos-(2-1)]; + } + + protected function reduceRule531() { + $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; + } + + protected function reduceRule532() { + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + } + + protected function reduceRule533() { + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + protected function reduceRule534() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-1)], true, $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule535() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(2-2)], null, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-1)], true, $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule536() { - $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(2-2)], null, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule537() { @@ -3091,35 +3093,35 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule538() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; } protected function reduceRule539() { - $this->semValue = array($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } protected function reduceRule540() { - $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); } protected function reduceRule541() { - $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule542() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule543() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule544() { - $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule545() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule546() { @@ -3127,22 +3129,26 @@ class Php5 extends \PhpParser\ParserAbstract } protected function reduceRule547() { - $this->semValue = new Expr\ArrayDimFetch(new Expr\Variable($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(6-4)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule548() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + $this->semValue = new Expr\ArrayDimFetch(new Expr\Variable($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(6-4)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); } protected function reduceRule549() { - $this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } protected function reduceRule550() { - $this->semValue = $this->parseNumString($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule551() { + $this->semValue = $this->parseNumString($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + } + + protected function reduceRule552() { $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } } diff --git a/lib/PhpParser/Parser/Php7.php b/lib/PhpParser/Parser/Php7.php index 1bcad03..ab49943 100644 --- a/lib/PhpParser/Parser/Php7.php +++ b/lib/PhpParser/Parser/Php7.php @@ -19,7 +19,7 @@ class Php7 extends \PhpParser\ParserAbstract { protected $tokenToSymbolMapSize = 392; protected $actionTableSize = 886; - protected $gotoTableSize = 477; + protected $gotoTableSize = 478; protected $invalidSymbol = 157; protected $errorSymbol = 1; @@ -236,9 +236,9 @@ class Php7 extends \PhpParser\ParserAbstract 571, 572, 573, 574, 575, 215, 576, 577, 578, 614, 615, 477, 27, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,-32766,-32766,-32766, 95, 96, - 97, 116, 239, 0, -269,-32766,-32766,-32766, -473, -472, - 1054, 648, 1057, 1055, 98,-32766, 275,-32766,-32766,-32766, - -32766,-32766, 579, 874, 876,-32766,-32766,-32766,-32766,-32766, + 97, 116, 239, 0, -269,-32766,-32766,-32766, -474, -473, + 1055, 648, 1058, 1056, 98,-32766, 275,-32766,-32766,-32766, + -32766,-32766, 579, 875, 877,-32766,-32766,-32766,-32766,-32766, -32766,-32766,-32766, 224,-32766, 718, 580, 581, 582, 583, 584, 585, 586,-32766, 241, 646, 844, 845, 846, 843, 842, 841, 587, 588, 589, 590, 591, 592, 593, 594, @@ -247,81 +247,81 @@ class Php7 extends \PhpParser\ParserAbstract 640, 641, 642, 643, 644, 645, 605, 606, 607, 608, 638, 629, 627, 628, 624, 625, 768, 616, 622, 623, 630, 631, 633, 632, 634, 635, 42, 43, 389, 44, - 45, 626, 637, 636, -216, 46, 47, 956, 48,-32767, - -32767,-32767,-32767, 90, 91, 92, 93, 94, 269, 346, + 45, 626, 637, 636, -216, 46, 47, 957, 48,-32767, + -32767,-32767,-32767, 90, 91, 92, 93, 94, 269, 347, 22, 844, 845, 846, 843, 842, 841, 836,-32766,-32766, - -32766, 1046, 1006, 349, 1045, 120, 972, 441, -426, 248, - 801, 49, 50, -473, -472, -473, -472, 51,-32766, 52, + -32766, 1047, 1007, 350, 1046, 120, 973, 441, -427, 248, + 801, 49, 50, -474, -473, -474, -473, 51,-32766, 52, 219, 220, 53, 54, 55, 56, 57, 58, 59, 60, - 1024, 22, 232, 61, 354, 949,-32766,-32766,-32766, 973, - 974, 649, 709, 1006, 28, -462, 125, 972,-32766,-32766, - -32766, 719, 403, 404, 365, 1006,-32766, 539,-32766,-32766, - -32766,-32766, 25, 222, 986, 286, 362, 24,-32766, -426, - -32766,-32766,-32766, 1009, 65, 769, 413, 266, -164, 258, - 1006, 226, 248, -426, 401, 402, 216, 521, 949, 276, - -426, 124, -429, 403, 404, 111, 978, 979, 980, 981, - 975, 976, 243, 112, -427, -425, 648, 414, 982, 977, - 359, 795, 796, 128, 968, 63, 130, 255, 350, 256, - 258, 390, -124, -124, -124, -4, 719, 391, 649, 1051, - -425, 708, 258, -221, 33, 17, 392, -124, 393, -124, + 1025, 22, 232, 61, 355, 950,-32766,-32766,-32766, 974, + 975, 649, 709, 1007, 28, -463, 125, 973,-32766,-32766, + -32766, 719, 403, 404, 366, 1007,-32766, 539,-32766,-32766, + -32766,-32766, 25, 222, 987, 286, 363, 24,-32766, -427, + -32766,-32766,-32766, 1010, 65, 769, 413, 266, -164, 258, + 1007, 226, 248, -427, 401, 402, 216, 521, 950, 276, + -427, 124, -430, 403, 404, 111, 979, 980, 981, 982, + 976, 977, 243, 112, -428, -426, 648, 414, 983, 978, + 360, 795, 796, 128, 969, 63, 130, 255, 351, 256, + 258, 390, -124, -124, -124, -4, 719, 391, 649, 1052, + -426, 708, 258, -221, 33, 17, 392, -124, 393, -124, 394, -124, 395, -124, 663, 396, -124, -124, -124, 34, - 35, 355, 356, 522, 36, 397, 359, 258, 62, 117, - 822, 287, 288, 398, 399, -427, -425, 118, -163, 400, - 38, 40, 694, 739, 357, 358, -240, 22, 122, -427, - -425,-32766,-32766,-32766, 795, 796, -427, -425, -430, 1006, - -462, -425, 1006, 972, 414, 21, 390, 359, 721, 537, - -124,-32766, 391,-32766,-32766, -425, 708, 664, 665, 33, - 17, 392, -425, 393, 41, 394, -464, 395, 353, 291, - 396, 71, 949, -164, 34, 35, 355, 356, 339, 36, + 35, 356, 357, 522, 36, 397, 360, 258, 62, 117, + 822, 287, 288, 398, 399, -428, -426, 118, -163, 400, + 38, 40, 694, 739, 358, 359, -240, 22, 122, -428, + -426,-32766,-32766,-32766, 795, 796, -428, -426, -431, 1007, + -463, -426, 1007, 973, 414, 21, 390, 360, 721, 537, + -124,-32766, 391,-32766,-32766, -426, 708, 664, 665, 33, + 17, 392, -426, 393, 41, 394, -465, 395, 354, 291, + 396, 71, 950, -164, 34, 35, 356, 357, 339, 36, 397, 246, 247, 62, 254, 719, 287, 288, 398, 399, - 404,-32766,-32766,-32766, 400, 956, 290, 656, 739, 357, - 358, 341, 113, 115, 351, 375, 72, 73, 74, 706, - 385, 65, 121, 543, 224, 242, 258, 259, 272, 258, + 404,-32766,-32766,-32766, 400, 957, 290, 656, 739, 358, + 359, 341, 113, 115, 352, 376, 72, 73, 74, 706, + 353, 65, 121, 543, 224, 242, 258, 259, 272, 258, 92, 93, 94, 721, 537, -4, 26, 7, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 131, 239, 717, 719, 390, 554,-32766,-32766,-32766, 549, 391, 114, -163, 98, 708,-32766,-32766, 33, 17, - 392, -240, 393, 1006, 394, -82, 395, 126, 369, 396, - 497, 18, 544, 34, 35, 355, 719, 225, 36, 397, + 392, -240, 393, 1007, 394, -82, 395, 126, 370, 396, + 497, 18, 544, 34, 35, 356, 719, 225, 36, 397, 802, 119, 62, 508, 509, 287, 288, 127, 298, 493, - 494, 383, 6, 400, 664, 665, 949, 795, 796, 1025, - 705, -464, 223, 942, 541, 821, 565, 347, 833, 555, - 657, 540, 221, 732, 390, 376, 120, 239, 39, 98, - 391, 516, 755, 537, 708, 652, 650, 33, 17, 392, - 1056, 393, 648, 394, 649, 395, 316, 502, 396, 16, - 258, 817, 34, 35, 355, 719, 390, 36, 397, 495, + 494, 384, 6, 400, 664, 665, 950, 795, 796, 1026, + 705, -465, 223, 943, 541, 821, 565, 348, 833, 555, + 657, 540, 221, 732, 390, 377, 120, 239, 39, 98, + 391, 516, 755, 537, 708, 849, 650, 33, 17, 392, + 1057, 393, 648, 394, 649, 395, 316, 502, 396, 16, + 258, 817, 34, 35, 356, 719, 390, 36, 397, 652, 445, 62, 391,-32766, 287, 288, 708, 517, 818, 33, - 17, 392, 400, 393, 363, 394, 450, 395, 498, 512, - 396, 531, 503, 542, 34, 35, 355, 719, -80, 36, - 397, 214, 368, 62, 10, 274, 287, 288, 492, 662, - 267, 721, 537, 271, 400, 740, 268, 741, 3, 988, - 985, 734, 0, 0, 0, 550, 0, -384, 0, 0, + 17, 392, 400, 393, 364, 394, 450, 395, 498, 503, + 396, 531, 512, 542, 34, 35, 356, 719, -80, 36, + 397, 214, 369, 62, 10, 274, 287, 288, 492, 662, + 267, 721, 537, 271, 400, 740, 268, 741, 3, 989, + 986, 734, 0, 0, 0, 550, 0, -385, 0, 0, 0, 0, 0, 0, 0, 390, 0, 0, 0, 0, 0, 391, 0, 721, 537, 708, 227, 9, 33, 17, 392, 289, 393, 0, 394, 264, 395, 321, 326, 396, - 342, 447, 322, 34, 35, 355, 719, 390, 36, 397, - 365, 310, 62, 391, 343, 287, 288, 708, 22, 702, + 342, 447, 322, 34, 35, 356, 719, 390, 36, 397, + 366, 310, 62, 391, 343, 287, 288, 708, 22, 702, 33, 17, 392, 400, 393, 564, 394, 563, 395, 32, - 1006, 396, 703, 716, 972, 34, 35, 355, 31, 704, + 1007, 396, 703, 716, 973, 34, 35, 356, 31, 704, 36, 397, 710, 699, 62, 771, 825, 287, 288, 661, 660, 756, 721, 537, 762, 400, 763, 697, 753, 827, - 751, 829, 828, 949, 826, 715, 707, 250, 265, 337, + 751, 829, 828, 950, 826, 715, 707, 250, 265, 337, 338, 561, 560, 538, 545, 547, 390, 548, 552, 553, 403, 404, 391, 556, 721, 537, 708, 558, 340, 33, - 17, 392, 659, 393, 1053, 394, 658, 395, 695, 834, - 396, 270, 65, 1052, 34, 35, 355, 258, 728, 36, - 397, 936, 667, 62, 666, 735, 287, 288,-32766,-32766, - -32766, 937, 761, 669, 400, 668, 1050, 1007, 1000, 1014, - 1019, 1022, 760, 938, 736, 557, 737, 738,-32766, 726, + 17, 392, 659, 393, 1054, 394, 658, 395, 695, 834, + 396, 270, 65, 1053, 34, 35, 356, 258, 728, 36, + 397, 937, 667, 62, 666, 735, 287, 288,-32766,-32766, + -32766, 938, 761, 669, 400, 668, 1051, 1008, 1001, 1015, + 1020, 1023, 760, 939, 736, 557, 737, 738,-32766, 726, -32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767, - -32767, 238, 237, 721, 537, 236, 930, 235, 218, 217, - 132, 129, 123, 345, -452, -430, 70, -429, 69, 68, - -428, 20, -454, 67, 23, 29, 66, 64, 37, 30, - 0, 297, 19, 15, 11, 488, 530, -219, 917, 914, - 913, 475, -217, 470, 970, 960, 527, 387, 382, 381, - 377, 14, 13, 12, -216, 0, -396, 0, 496, 1013, - 1048, 998, 999, 969, 0, 987 + -32767, 238, 237, 721, 537, 236, 931, 235, 218, 217, + 132, 129, 123, 346, -453, -431, 70, -430, 69, 68, + -429, 20, -455, 67, 23, 29, 66, 64, 37, 30, + 0, 297, 19, 15, 11, 488, 530, -219, 918, 915, + 914, 475, -217, 470, 971, 961, 527, 387, 383, 382, + 378, 14, 13, 12, -216, 0, -397, 0, 496, 1014, + 1049, 999, 1000, 970, 0, 988 ); protected $actionCheck = array( @@ -444,18 +444,18 @@ class Php7 extends \PhpParser\ParserAbstract -45, 224, 224, 95, 490, 730, 199, 199, 397, 207, 111, -22, -22, -22, 275, 498, 92, 92, 242, -37, 233, 233, 274, 233, 422, 422, 422, 221, 221, 221, - 221, 221, 78, 501, 221, 221, 221, 506, 652, 387, - 503, 642, 273, 31, 32, 524, 538, 171, 492, 171, + 221, 221, 78, 501, 221, 221, 221, 503, 652, 387, + 506, 642, 273, 31, 32, 524, 538, 171, 492, 171, 171, 171, 413, 428, 441, 495, 676, 396, 97, 226, 390, 493, 588, 166, 572, 382, 281, 370, 392, 417, 516, 571, 709, 331, 708, 377, 149, 493, 493, 493, 358, 589, 590, 339, -8, 645, 591, 241, 419, 379, 643, 634, 423, 632, 440, 381, 568, 487, 487, 485, - 485, 487, 487, 487, 487, 508, 487, 690, 690, 485, - 476, 485, 500, 508, 697, 485, 508, 485, 485, 487, - 485, 690, 508, 508, 494, 487, 489, 489, 485, 485, - 499, 690, 690, 499, 508, 549, 547, 509, 484, 406, - 476, 406, 509, 508, 406, 500, 476, 406, 33, 696, + 485, 487, 487, 487, 487, 476, 508, 487, 690, 690, + 485, 500, 485, 476, 508, 697, 485, 508, 485, 485, + 487, 485, 690, 508, 508, 494, 487, 489, 489, 485, + 485, 499, 690, 690, 499, 508, 549, 547, 509, 484, + 406, 500, 406, 509, 508, 406, 500, 406, 33, 696, 695, 466, 692, 694, 688, 607, 687, 594, 502, 504, 678, 677, 685, 698, 693, 444, 525, 471, 250, 258, 486, 481, 689, 492, 534, 483, 483, 483, 481, 684, @@ -502,8 +502,8 @@ class Php7 extends \PhpParser\ParserAbstract 487, 92, 0, 0, 171, 0, 0, 0, 0, 0, 487, 487, 487, 0, 0, 0, 0, 0, 487, 92, 0, 0, 0, 420, 420, 39, 420, 420, 0, 0, - 0, 487, 487, 0, 476, 0, 0, 0, 0, 0, - 0, 690, 485, 0, 0, 476, 0, 483, 24, 0, + 0, 487, 487, 0, 500, 0, 0, 0, 0, 0, + 0, 690, 485, 0, 0, 500, 0, 483, 24, 0, 228, 0, 0, 0, 0, 0, 479, 228, 244, 0, 244, 0, 0, 483, 483, 483, 0, 479, 479, 0, 0, 240, 479, 0, 0, 0, 240, 152, 0, 152, @@ -513,9 +513,9 @@ class Php7 extends \PhpParser\ParserAbstract 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, 474, 474, 474,32767,32767,32767,32767, 287, - 466, 287, 287,32767, 423, 423, 423, 423, 423, 423, - 423, 466,32767,32767,32767,32767,32767, 366,32767,32767, + 32767,32767, 475, 475, 475,32767,32767,32767,32767, 288, + 467, 288, 288,32767, 424, 424, 424, 424, 424, 424, + 424, 467,32767,32767,32767,32767,32767, 367,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, @@ -524,44 +524,44 @@ class Php7 extends \PhpParser\ParserAbstract 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 471,32767,32767,32767,32767, + 32767,32767,32767,32767,32767, 472,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767,32767, 349, 350, 352, - 353, 286, 424, 239, 470, 285, 118, 248, 241, 193, - 284, 225, 121, 314, 367, 316, 365, 369, 315, 292, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 290, 291, 368, 346, 345, 344, 312, 313, - 289, 317, 319, 289, 318, 335, 336, 333, 334, 337, - 338, 339, 340, 341,32767,32767,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767,32767, 350, 351, 353, + 354, 287, 425, 239, 471, 286, 118, 248, 241, 193, + 285, 225, 121, 315, 368, 317, 366, 370, 316, 293, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 291, 292, 369, 347, 346, 345, 313, 314, + 290, 318, 320, 290, 319, 336, 337, 334, 335, 338, + 339, 340, 341, 342,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767, 271, 271, - 271, 271,32767, 326, 327, 231, 231, 231, 231,32767, - 272, 231,32767,32767,32767,32767,32767,32767,32767, 417, - 343, 321, 322, 320,32767, 395,32767, 397,32767,32767, - 309, 311, 389, 293,32767,32767,32767,32767,32767,32767, + 271, 271,32767, 327, 328, 231, 231, 231, 231,32767, + 272, 231,32767,32767,32767,32767,32767,32767,32767, 418, + 344, 322, 323, 321,32767, 396,32767, 398,32767,32767, + 310, 312, 390, 294,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767, 392, 425, 425,32767,32767,32767, 383,32767, - 32767,32767, 161, 212, 214, 400,32767,32767,32767,32767, - 32767, 331,32767,32767,32767,32767,32767, 481,32767,32767, - 32767,32767,32767, 425,32767,32767,32767, 323, 324, 325, - 32767,32767,32767, 425, 425,32767,32767, 425,32767, 425, + 32767,32767, 393, 426, 426,32767,32767,32767, 384,32767, + 32767,32767, 161, 212, 214, 401,32767,32767,32767,32767, + 32767, 332,32767,32767,32767,32767,32767, 482,32767,32767, + 32767,32767,32767, 426,32767,32767,32767, 324, 325, 326, + 32767,32767,32767, 426, 426,32767,32767, 426,32767, 426, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767, 165,32767, 398, 398,32767, - 32767,32767,32767, 165, 393,32767, 165,32767,32767,32767, - 32767,32767, 165, 165, 178,32767, 176, 176,32767,32767, - 180,32767, 439, 180, 165, 198, 198, 375, 167, 233, - 32767, 233, 375, 165, 233,32767,32767, 233,32767,32767, + 32767,32767,32767,32767,32767,32767, 165,32767, 399, 399, + 32767,32767,32767,32767, 165, 394,32767, 165,32767,32767, + 32767,32767,32767, 165, 165, 178,32767, 176, 176,32767, + 32767, 180,32767, 440, 180, 165, 198, 198, 376, 167, + 233,32767, 233, 376, 165, 233,32767, 233,32767,32767, 32767, 83,32767,32767,32767,32767,32767,32767,32767,32767, - 32767,32767,32767,32767,32767,32767, 385,32767,32767, 405, - 32767, 418, 437, 383,32767, 329, 330, 332,32767, 427, - 354, 355, 356, 357, 358, 359, 360, 362,32767, 467, - 388,32767,32767,32767,32767,32767,32767, 85, 110, 247, - 32767, 479, 85, 386,32767, 479,32767,32767,32767,32767, - 32767,32767, 288,32767,32767,32767, 85, 85,32767,32767, - 463,32767, 425, 387,32767, 328, 401, 444,32767,32767, - 426,32767,32767, 220, 85,32767, 179,32767,32767,32767, - 32767,32767,32767,32767, 405,32767,32767, 181,32767,32767, - 425,32767,32767,32767,32767, 283,32767,32767,32767,32767, - 32767, 425,32767,32767,32767, 224,32767,32767,32767,32767, + 32767,32767,32767,32767,32767,32767, 386,32767,32767, 406, + 32767, 419, 438, 384,32767, 330, 331, 333,32767, 428, + 355, 356, 357, 358, 359, 360, 361, 363,32767, 468, + 389,32767,32767,32767,32767,32767,32767, 85, 110, 247, + 32767, 480, 85, 387,32767, 480,32767,32767,32767,32767, + 32767,32767, 289,32767,32767,32767, 85, 85,32767,32767, + 464,32767, 426, 388,32767, 329, 402, 445,32767,32767, + 427,32767,32767, 220, 85,32767, 179,32767,32767,32767, + 32767,32767,32767,32767, 406,32767,32767, 181,32767,32767, + 426,32767,32767,32767,32767, 284,32767,32767,32767,32767, + 32767, 426,32767,32767,32767, 224,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767, 83, 60,32767, 265,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767, 123, 123, 3, @@ -575,7 +575,7 @@ class Php7 extends \PhpParser\ParserAbstract 145, 161, 161, 161, 162, 162, 162, 162, 162, 162, 162, 145, 157, 158, 159, 160, 176, 174, 177, 415, 416, 301, 417, 420, 421, 422, 423, 424, 425, 426, - 427, 861, 136, 137, 138, 139, 140, 141, 142, 143, + 427, 862, 136, 137, 138, 139, 140, 141, 142, 143, 144, 147, 173, 175, 178, 195, 198, 199, 201, 202, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 233, 234, 251, 252, 253, 317, 318, 319, 465, 180, @@ -583,42 +583,42 @@ class Php7 extends \PhpParser\ParserAbstract 191, 192, 193, 149, 194, 150, 165, 166, 167, 196, 168, 151, 152, 153, 169, 154, 197, 133, 170, 155, 171, 172, 156, 523, 200, 654, 437, 533, 482, 499, - 467, 691, 653, 1042, 1042, 200, 442, 442, 442, 278, - 655, 770, 5, 750, 442, 559, 1042, 431, 779, 774, + 467, 691, 653, 1043, 1043, 200, 442, 442, 442, 278, + 947, 770, 520, 750, 442, 559, 1043, 431, 779, 774, 433, 436, 449, 468, 469, 471, 455, 457, 442, 562, 489, 491, 511, 513, 767, 518, 519, 781, 526, 766, - 528, 534, 777, 536, 484, 484, 971, 971, 971, 971, - 971, 971, 971, 971, 971, 971, 971, 971, 419, 419, + 528, 534, 777, 536, 484, 484, 972, 972, 972, 972, + 972, 972, 972, 972, 972, 972, 972, 972, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, - 419, 419, 678, 685, 430, 946, 520, 257, 245, 442, - 442, 430, 460, 456, 474, 442, 442, 532, 442, 466, - 832, 535, 712, 460, 515, 830, 506, 487, 279, 514, - 336, 443, 300, 678, 678, 1016, 1017, 463, 418, 418, + 419, 419, 678, 506, 5, 655, 514, 948, 300, 442, + 442, 685, 460, 456, 474, 442, 442, 949, 1003, 442, + 466, 832, 535, 460, 505, 515, 830, 487, 279, 946, + 336, 532, 443, 678, 678, 485, 486, 529, 463, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, - 418, 418, 296, 464, 479, 1041, 1041, 754, 448, 458, - 229, 804, 230, 231, 485, 486, 529, 461, 1041, 1034, - 378, 947, 302, 1026, 500, 314, 908, 789, 1015, 8, - 800, 948, 1002, 793, 1044, 671, 671, 505, 285, 679, - 679, 679, 681, 945, 670, 330, 808, 308, 674, 311, - 546, 672, 333, 939, 811, 682, 944, 373, 324, 501, + 418, 418, 418, 296, 712, 1042, 1042, 754, 430, 448, + 458, 229, 461, 230, 231, 430, 1017, 1018, 1042, 257, + 245, 379, 464, 479, 804, 1035, 302, 1027, 500, 314, + 8, 909, 789, 1016, 1045, 671, 671, 800, 793, 679, + 679, 679, 681, 285, 330, 670, 674, 311, 808, 308, + 546, 672, 333, 940, 811, 682, 945, 374, 324, 501, 329, 313, 313, 260, 261, 283, 462, 263, 323, 284, - 327, 490, 758, 481, 384, 0, 280, 281, 848, 0, + 327, 490, 758, 481, 848, 280, 281, 385, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 950, 0, 0, 794, 794, 794, 794, 950, 1012, - 794, 794, 0, 1021, 1021, 0, 1012, 794, 0, 0, - 0, 0, 840, 1023, 1023, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1008, 748, 748, 748, 724, - 748, 0, 0, 743, 749, 725, 784, 784, 1031, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 454, 810, 0, 1010, 1010, 810, 0, + 0, 951, 0, 0, 794, 794, 794, 794, 951, 1013, + 794, 794, 0, 1022, 1022, 0, 1013, 794, 0, 0, + 0, 0, 0, 1024, 1024, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1009, 748, 748, 748, 724, + 748, 0, 0, 743, 749, 725, 784, 784, 1032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 454, 810, 0, 1011, 1011, 810, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 435, 453, 0, 0, - 0, 0, 0, 0, 0, 0, 435, 0, 453, 0, - 0, 0, 434, 0, 440, 364, 0, 366, 0, 0, - 0, 0, 0, 0, 0, 677, 1049 + 0, 0, 0, 0, 0, 0, 0, 435, 0, 453, + 0, 0, 0, 434, 0, 440, 365, 0, 367, 0, + 0, 0, 0, 0, 0, 0, 677, 1050 ); protected $gotoCheck = array( @@ -634,58 +634,59 @@ class Php7 extends \PhpParser\ParserAbstract 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 54, 47, 13, 9, 8, 37, 37, - 82, 12, 12, 127, 127, 47, 9, 9, 9, 66, - 14, 12, 94, 12, 9, 12, 127, 12, 12, 12, + 82, 12, 12, 128, 128, 47, 9, 9, 9, 66, + 78, 12, 11, 12, 9, 12, 128, 12, 12, 12, 40, 40, 40, 40, 40, 40, 30, 9, 9, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 72, 72, 72, 72, 72, 72, - 72, 72, 72, 72, 72, 72, 72, 72, 117, 117, - 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, - 117, 117, 21, 27, 111, 78, 11, 114, 114, 9, - 9, 111, 71, 9, 9, 9, 9, 5, 9, 7, - 7, 7, 46, 71, 7, 7, 58, 64, 64, 58, - 64, 9, 58, 21, 21, 121, 121, 9, 115, 115, - 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, - 115, 115, 55, 2, 2, 126, 126, 31, 55, 55, - 62, 80, 62, 62, 57, 57, 57, 116, 126, 125, - 55, 78, 43, 123, 45, 44, 98, 74, 119, 55, - 76, 78, 78, 77, 126, 21, 21, 11, 16, 21, - 21, 21, 21, 11, 21, 20, 81, 10, 23, 15, - 68, 22, 19, 104, 83, 24, 106, 60, 47, 47, + 72, 72, 72, 72, 72, 72, 72, 72, 118, 118, + 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, + 118, 118, 21, 58, 94, 14, 58, 78, 58, 9, + 9, 27, 71, 9, 9, 9, 9, 78, 78, 9, + 7, 7, 7, 71, 11, 7, 7, 64, 64, 11, + 64, 5, 9, 21, 21, 57, 57, 57, 9, 116, + 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, + 116, 116, 116, 55, 46, 127, 127, 31, 112, 55, + 55, 62, 117, 62, 62, 112, 122, 122, 127, 115, + 115, 55, 2, 2, 80, 126, 43, 124, 45, 44, + 55, 99, 74, 120, 127, 21, 21, 76, 77, 21, + 21, 21, 21, 16, 20, 21, 23, 15, 81, 10, + 68, 22, 19, 105, 83, 24, 107, 60, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, - 47, 47, 65, 61, 102, -1, 66, 66, 96, -1, + 47, 47, 65, 61, 96, 66, 66, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 54, -1, -1, 54, 54, 54, 54, 54, 82, 54, 54, -1, 8, 8, -1, 82, 54, -1, -1, - -1, -1, 94, 82, 82, -1, -1, -1, -1, -1, + -1, -1, -1, 82, 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 82, 54, 54, 54, 54, 54, -1, -1, 54, 54, 54, 71, 71, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8, 82, -1, 82, 82, 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 94, -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, 8, -1, 8, -1, - -1, -1, 8, -1, 8, 8, -1, 8, -1, -1, - -1, -1, -1, -1, -1, 8, 8 + -1, -1, -1, -1, -1, -1, -1, 8, -1, 8, + -1, -1, -1, 8, -1, 8, 8, -1, 8, -1, + -1, -1, -1, -1, -1, -1, 8, 8 ); protected $gotoBase = array( - 0, 0, -296, 0, 0, 197, 0, 206, 107, -138, - 15, -103, 120, 113, 128, 4, 24, 0, 0, -46, - 20, -62, 5, 22, -54, -20, 0, 186, 0, 0, + 0, 0, -277, 0, 0, 211, 0, 207, 107, -138, + 17, -167, 120, 113, 193, 2, 29, 0, 0, -46, + 19, -62, 5, 20, -55, -20, 0, 194, 0, 0, -392, 231, 0, 0, 0, 0, 0, 87, 0, 0, - 105, 0, 0, 229, 47, 49, 198, 84, 0, 0, - 0, 0, 0, 0, 109, -114, 0, 18, -165, 0, - -70, -60, -308, 0, -51, -39, -247, 0, -8, 0, - 0, 172, -50, 0, 26, 0, 28, 25, -100, 0, - 230, -5, 117, -56, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 122, 0, -67, 0, 27, 0, - 0, 0, -68, 0, -55, 0, -57, 0, 0, 0, - 0, -38, 0, 0, -58, 14, 234, -36, 0, 21, - 0, -64, 0, 222, 0, 235, 1, -121, 0, 0 + 105, 0, 0, 233, 51, 53, 230, 84, 0, 0, + 0, 0, 0, 0, 109, -114, 0, -11, -189, 0, + -71, -61, -307, 0, -51, -40, -248, 0, -8, 0, + 0, 172, -50, 0, 31, 0, 35, 30, -165, 0, + 243, -3, 117, -57, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 184, 0, -39, 0, 0, 32, + 0, 0, 0, -66, 0, -56, 0, -58, 0, 0, + 0, 0, 16, 0, 0, 4, 15, 229, -36, 0, + 26, 0, -33, 0, 226, 0, 241, 1, -121, 0, + 0 ); protected $gotoDefault = array( @@ -694,14 +695,15 @@ class Php7 extends \PhpParser\ParserAbstract 325, 680, 673, 675, 683, 134, 334, 686, 1, 688, 444, 720, 293, 696, 294, 510, 698, 451, 700, 701, 432, 305, 306, 452, 312, 483, 711, 203, 309, 713, - 292, 714, 723, 299, 295, 386, 380, 472, 504, 360, - 370, 480, 228, 459, 476, 757, 277, 765, 551, 773, - 776, 408, 409, 473, 788, 374, 798, 792, 965, 320, - 803, 809, 997, 812, 815, 352, 332, 328, 819, 820, - 4, 824, 524, 525, 839, 240, 847, 860, 348, 927, - 929, 446, 379, 940, 367, 335, 943, 1001, 361, 410, - 371, 957, 262, 282, 244, 411, 428, 249, 412, 372, - 1004, 1011, 315, 1027, 429, 1035, 1043, 273, 307, 478 + 292, 714, 723, 299, 295, 386, 381, 472, 504, 361, + 371, 480, 228, 459, 476, 757, 277, 765, 551, 773, + 776, 408, 409, 473, 788, 375, 798, 792, 966, 320, + 803, 809, 998, 812, 815, 345, 332, 328, 819, 820, + 4, 824, 524, 525, 839, 240, 847, 495, 861, 349, + 928, 930, 446, 380, 941, 368, 335, 944, 1002, 362, + 410, 372, 958, 262, 282, 244, 411, 428, 249, 412, + 373, 1005, 1012, 315, 1028, 429, 1036, 1044, 273, 307, + 478 ); protected $ruleToNonTerminal = array( @@ -733,7 +735,7 @@ class Php7 extends \PhpParser\ParserAbstract 62, 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, 96, 96, 43, 43, 37, 37, 25, + 94, 86, 86, 97, 96, 96, 43, 43, 37, 37, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, @@ -742,19 +744,19 @@ class Php7 extends \PhpParser\ParserAbstract 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 103, 97, 97, 102, 102, 105, 105, 106, - 107, 107, 107, 111, 111, 54, 54, 54, 98, 98, - 98, 109, 109, 99, 99, 101, 101, 101, 104, 104, - 115, 115, 115, 72, 117, 117, 117, 100, 100, 100, - 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, - 100, 100, 100, 40, 40, 113, 113, 113, 108, 108, - 108, 118, 118, 118, 118, 118, 118, 47, 47, 47, - 82, 82, 82, 82, 121, 120, 112, 112, 112, 112, - 112, 112, 110, 110, 110, 119, 119, 119, 119, 71, - 122, 122, 123, 123, 123, 123, 123, 116, 124, 124, - 125, 125, 125, 125, 125, 114, 114, 114, 114, 127, - 128, 126, 126, 126, 126, 126, 126, 126, 129, 129, - 129, 129 + 25, 25, 25, 104, 98, 98, 103, 103, 106, 106, + 107, 108, 108, 108, 112, 112, 54, 54, 54, 99, + 99, 99, 110, 110, 100, 100, 102, 102, 102, 105, + 105, 116, 116, 116, 72, 118, 118, 118, 101, 101, + 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, + 101, 101, 101, 101, 40, 40, 114, 114, 114, 109, + 109, 109, 119, 119, 119, 119, 119, 119, 47, 47, + 47, 82, 82, 82, 82, 122, 121, 113, 113, 113, + 113, 113, 113, 111, 111, 111, 120, 120, 120, 120, + 71, 123, 123, 124, 124, 124, 124, 124, 117, 125, + 125, 126, 126, 126, 126, 126, 115, 115, 115, 115, + 128, 129, 127, 127, 127, 127, 127, 127, 127, 130, + 130, 130, 130 ); protected $ruleToLength = array( @@ -786,28 +788,28 @@ class Php7 extends \PhpParser\ParserAbstract 0, 3, 4, 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, 3, 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, + 1, 1, 3, 1, 1, 3, 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, - 10, 11, 7, 3, 2, 0, 4, 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, 1, 3, 3, 0, 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, + 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, 10, 11, 7, 3, 2, 0, 4, 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, 1, 3, 3, 0, 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 reduceRule0() { @@ -1949,27 +1951,27 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule283() { - $this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = ($this->useIdentifierNodes ? new Node\Identifier(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : substr($this->semStack[$this->stackPos-(1-1)], 1)); } protected function reduceRule284() { - $this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(3-1)], 1), $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Stmt\PropertyProperty($this->semStack[$this->stackPos-(1-1)], null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule285() { - $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; + $this->semValue = new Stmt\PropertyProperty($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule286() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; } protected function reduceRule287() { - $this->semValue = array(); + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } protected function reduceRule288() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = array(); } protected function reduceRule289() { @@ -1977,7 +1979,7 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule290() { - $this->semValue = new Expr\Assign($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule291() { @@ -1989,358 +1991,358 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule293() { - $this->semValue = new Expr\AssignRef($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Assign($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule294() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\AssignRef($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule295() { - $this->semValue = new Expr\Clone_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule296() { - $this->semValue = new Expr\AssignOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\Clone_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule297() { - $this->semValue = new Expr\AssignOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule298() { - $this->semValue = new Expr\AssignOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule299() { - $this->semValue = new Expr\AssignOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule300() { - $this->semValue = new Expr\AssignOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule301() { - $this->semValue = new Expr\AssignOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule302() { - $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule303() { - $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule304() { - $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule305() { - $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule306() { - $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule307() { - $this->semValue = new Expr\AssignOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule308() { - $this->semValue = new Expr\PostInc($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\AssignOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule309() { - $this->semValue = new Expr\PreInc($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\PostInc($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule310() { - $this->semValue = new Expr\PostDec($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\PreInc($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule311() { - $this->semValue = new Expr\PreDec($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\PostDec($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule312() { - $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PreDec($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule313() { - $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule314() { - $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule315() { - $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule316() { - $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule317() { - $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule318() { - $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule319() { - $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule320() { - $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule321() { - $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Concat($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule322() { - $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Plus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule323() { - $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Minus($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule324() { - $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Mul($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule325() { - $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Div($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule326() { - $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Mod($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule327() { - $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule328() { - $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule329() { - $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Pow($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule330() { - $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule331() { - $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule332() { - $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule333() { - $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule334() { - $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Identical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule335() { - $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule336() { - $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Equal($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule337() { - $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule338() { - $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule339() { - $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule340() { - $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule341() { - $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Greater($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule342() { - $this->semValue = new Expr\Instanceof_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule343() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + $this->semValue = new Expr\Instanceof_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule344() { - $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } protected function reduceRule345() { - $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(5-1)], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes); } protected function reduceRule346() { - $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\Ternary($this->semStack[$this->stackPos-(4-1)], null, $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule347() { - $this->semValue = new Expr\Isset_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule348() { - $this->semValue = new Expr\Empty_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Isset_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule349() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Empty_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule350() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule351() { - $this->semValue = new Expr\Eval_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule352() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Eval_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule353() { - $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule354() { - $this->semValue = new Expr\Cast\Int_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule355() { - $this->semValue = new Expr\Cast\Double($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Int_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule356() { - $this->semValue = new Expr\Cast\String_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Double($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule357() { - $this->semValue = new Expr\Cast\Array_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\String_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule358() { - $this->semValue = new Expr\Cast\Object_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Array_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule359() { - $this->semValue = new Expr\Cast\Bool_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Object_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule360() { - $this->semValue = new Expr\Cast\Unset_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\Cast\Bool_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule361() { + $this->semValue = new Expr\Cast\Unset_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule362() { $attrs = $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strtolower($this->semStack[$this->stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE; $this->semValue = new Expr\Exit_($this->semStack[$this->stackPos-(2-2)], $attrs); } - protected function reduceRule362() { + protected function reduceRule363() { $this->semValue = new Expr\ErrorSuppress($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule363() { + protected function reduceRule364() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } - protected function reduceRule364() { + protected function reduceRule365() { $this->semValue = new Expr\ShellExec($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } - protected function reduceRule365() { + protected function reduceRule366() { $this->semValue = new Expr\Print_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule366() { + protected function reduceRule367() { $this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule367() { + protected function reduceRule368() { $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(2-2)], null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule368() { + protected function reduceRule369() { $this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-2)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } - protected function reduceRule369() { + protected function reduceRule370() { $this->semValue = new Expr\YieldFrom($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule370() { + protected function reduceRule371() { $this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$this->stackPos-(10-2)], 'params' => $this->semStack[$this->stackPos-(10-4)], 'uses' => $this->semStack[$this->stackPos-(10-6)], 'returnType' => $this->semStack[$this->stackPos-(10-7)], 'stmts' => $this->semStack[$this->stackPos-(10-9)]], $this->startAttributeStack[$this->stackPos-(10-1)] + $this->endAttributes); } - protected function reduceRule371() { + protected function reduceRule372() { $this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$this->stackPos-(11-3)], 'params' => $this->semStack[$this->stackPos-(11-5)], 'uses' => $this->semStack[$this->stackPos-(11-7)], 'returnType' => $this->semStack[$this->stackPos-(11-8)], 'stmts' => $this->semStack[$this->stackPos-(11-10)]], $this->startAttributeStack[$this->stackPos-(11-1)] + $this->endAttributes); } - protected function reduceRule372() { + protected function reduceRule373() { $this->semValue = array(new Stmt\Class_(null, ['type' => 0, 'extends' => $this->semStack[$this->stackPos-(7-3)], 'implements' => $this->semStack[$this->stackPos-(7-4)], 'stmts' => $this->semStack[$this->stackPos-(7-6)]], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(7-2)]); $this->checkClass($this->semValue[0], -1); } - protected function reduceRule373() { + protected function reduceRule374() { $this->semValue = new Expr\New_($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } - protected function reduceRule374() { + protected function reduceRule375() { list($class, $ctorArgs) = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } - protected function reduceRule375() { + protected function reduceRule376() { $this->semValue = array(); } - protected function reduceRule376() { + protected function reduceRule377() { $this->semValue = $this->semStack[$this->stackPos-(4-3)]; } - protected function reduceRule377() { + protected function reduceRule378() { $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } - protected function reduceRule378() { + protected function reduceRule379() { $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; } - protected function reduceRule379() { - $this->semValue = new Expr\ClosureUse($this->semStack[$this->stackPos-(2-2)], $this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - protected function reduceRule380() { - $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Expr\ClosureUse($this->semStack[$this->stackPos-(2-2)], $this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule381() { @@ -2348,31 +2350,31 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule382() { - $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\FuncCall($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule383() { - $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule384() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; - } - - protected function reduceRule385() { $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } + protected function reduceRule385() { + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + } + protected function reduceRule386() { - $this->semValue = new Name\FullyQualified($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule387() { - $this->semValue = new Name\Relative($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Name\FullyQualified($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule388() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Name\Relative($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule389() { @@ -2380,11 +2382,11 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule390() { - $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule391() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; } protected function reduceRule392() { @@ -2392,106 +2394,106 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule393() { - $this->semValue = null; - } - - protected function reduceRule394() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; - } - - protected function reduceRule395() { - $this->semValue = array(); - } - - protected function reduceRule396() { - $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$this->stackPos-(1-1)], '`'), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes)); - } - - protected function reduceRule397() { - foreach ($this->semStack[$this->stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', true); } }; $this->semValue = $this->semStack[$this->stackPos-(1-1)]; - } - - protected function reduceRule398() { - $this->semValue = array(); - } - - protected function reduceRule399() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } + protected function reduceRule394() { + $this->semValue = null; + } + + protected function reduceRule395() { + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + } + + protected function reduceRule396() { + $this->semValue = array(); + } + + protected function reduceRule397() { + $this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$this->stackPos-(1-1)], '`'), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes)); + } + + protected function reduceRule398() { + foreach ($this->semStack[$this->stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', true); } }; $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + } + + protected function reduceRule399() { + $this->semValue = array(); + } + protected function reduceRule400() { - $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule401() { - $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule402() { - $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], new Expr\Error($this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes), $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule403() { + $this->semValue = new Expr\ClassConstFetch($this->semStack[$this->stackPos-(3-1)], new Expr\Error($this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes), $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); $this->errorState = 2; + } + + protected function reduceRule404() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_SHORT; $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(3-2)], $attrs); } - protected function reduceRule404() { + protected function reduceRule405() { $attrs = $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes; $attrs['kind'] = Expr\Array_::KIND_LONG; $this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(4-3)], $attrs); } - protected function reduceRule405() { + protected function reduceRule406() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } - protected function reduceRule406() { + protected function reduceRule407() { $attrs = $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$this->stackPos-(1-1)][0] === "'" || ($this->semStack[$this->stackPos-(1-1)][1] === "'" && ($this->semStack[$this->stackPos-(1-1)][0] === 'b' || $this->semStack[$this->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[$this->stackPos-(1-1)]), $attrs); } - protected function reduceRule407() { + protected function reduceRule408() { $this->semValue = $this->parseLNumber($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule408() { + protected function reduceRule409() { $this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$this->stackPos-(1-1)]), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule409() { + protected function reduceRule410() { $this->semValue = new Scalar\MagicConst\Line($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule410() { + protected function reduceRule411() { $this->semValue = new Scalar\MagicConst\File($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule411() { + protected function reduceRule412() { $this->semValue = new Scalar\MagicConst\Dir($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule412() { + protected function reduceRule413() { $this->semValue = new Scalar\MagicConst\Class_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule413() { + protected function reduceRule414() { $this->semValue = new Scalar\MagicConst\Trait_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule414() { + protected function reduceRule415() { $this->semValue = new Scalar\MagicConst\Method($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule415() { + protected function reduceRule416() { $this->semValue = new Scalar\MagicConst\Function_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } - protected function reduceRule416() { - $this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); - } - protected function reduceRule417() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule418() { @@ -2499,31 +2501,31 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule419() { + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + } + + protected function reduceRule420() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->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[$this->stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_(Scalar\String_::parseDocString($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-2)]), $attrs); } - protected function reduceRule420() { + protected function reduceRule421() { $attrs = $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->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[$this->stackPos-(2-1)], $matches); $attrs['docLabel'] = $matches[1];; $this->semValue = new Scalar\String_('', $attrs); } - protected function reduceRule421() { + protected function reduceRule422() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED; foreach ($this->semStack[$this->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[$this->stackPos-(3-2)], $attrs); } - protected function reduceRule422() { + protected function reduceRule423() { $attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->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[$this->stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];; foreach ($this->semStack[$this->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[$this->stackPos-(3-2)]);; $this->semValue = new Scalar\Encapsed($this->semStack[$this->stackPos-(3-2)], $attrs); } - protected function reduceRule423() { - $this->semValue = null; - } - protected function reduceRule424() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = null; } protected function reduceRule425() { @@ -2531,11 +2533,11 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule426() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule427() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } protected function reduceRule428() { @@ -2543,19 +2545,19 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule429() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; - } - - protected function reduceRule430() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } + protected function reduceRule430() { + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + } + protected function reduceRule431() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule432() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule433() { @@ -2567,15 +2569,15 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule435() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule436() { - $this->semValue = new Expr\MethodCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule437() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\MethodCall($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule438() { @@ -2583,39 +2585,39 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule439() { - $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule440() { - $this->semValue = substr($this->semStack[$this->stackPos-(1-1)], 1); + $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule441() { - $this->semValue = $this->semStack[$this->stackPos-(4-3)]; + $this->semValue = substr($this->semStack[$this->stackPos-(1-1)], 1); } protected function reduceRule442() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(4-3)]; } protected function reduceRule443() { - $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); } protected function reduceRule444() { - $var = $this->semStack[$this->stackPos-(1-1)]; $this->semValue = \is_string($var) ? ($this->useIdentifierNodes ? new Node\Identifier($var, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : $var) : $var; + $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); $this->errorState = 2; } protected function reduceRule445() { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $var = $this->semStack[$this->stackPos-(1-1)]; $this->semValue = \is_string($var) ? ($this->useIdentifierNodes ? new Node\Identifier($var, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : $var) : $var; } protected function reduceRule446() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule447() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule448() { @@ -2623,11 +2625,11 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule449() { - $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule450() { - $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule451() { @@ -2635,47 +2637,47 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule452() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule453() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; - } - - protected function reduceRule454() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); - } - - protected function reduceRule455() { $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } - protected function reduceRule456() { + protected function reduceRule454() { $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } - protected function reduceRule457() { + protected function reduceRule455() { $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } + protected function reduceRule456() { + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + } + + protected function reduceRule457() { + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + } + protected function reduceRule458() { - $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule459() { - $this->semValue = new Expr\List_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2; } protected function reduceRule460() { - $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; + $this->semValue = new Expr\List_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule461() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; } protected function reduceRule462() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } protected function reduceRule463() { @@ -2683,7 +2685,7 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule464() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule465() { @@ -2691,43 +2693,43 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule466() { - $this->semValue = null; - } - - protected function reduceRule467() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; $end = count($this->semValue)-1; if ($this->semValue[$end] === null) unset($this->semValue[$end]); - } - - protected function reduceRule468() { - $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; - } - - protected function reduceRule469() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); - } - - protected function reduceRule470() { $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } - protected function reduceRule471() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); - } - - protected function reduceRule472() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-1)], true, $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); - } - - protected function reduceRule473() { - $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(2-2)], null, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); - } - - protected function reduceRule474() { + protected function reduceRule467() { $this->semValue = null; } + protected function reduceRule468() { + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; $end = count($this->semValue)-1; if ($this->semValue[$end] === null) unset($this->semValue[$end]); + } + + protected function reduceRule469() { + $this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)]; + } + + protected function reduceRule470() { + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + } + + protected function reduceRule471() { + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(3-3)], $this->semStack[$this->stackPos-(3-1)], false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + } + + protected function reduceRule472() { + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + } + + protected function reduceRule473() { + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(4-4)], $this->semStack[$this->stackPos-(4-1)], true, $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + } + + protected function reduceRule474() { + $this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(2-2)], null, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + protected function reduceRule475() { - $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; + $this->semValue = null; } protected function reduceRule476() { @@ -2735,35 +2737,35 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule477() { - $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); + $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; } protected function reduceRule478() { - $this->semValue = array($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); + $this->semValue = array($this->semStack[$this->stackPos-(1-1)]); } protected function reduceRule479() { - $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = array($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); } protected function reduceRule480() { - $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\EncapsedStringPart($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule481() { - $this->semValue = $this->semStack[$this->stackPos-(1-1)]; + $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule482() { - $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(1-1)]; } protected function reduceRule483() { - $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\ArrayDimFetch($this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); } protected function reduceRule484() { - $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); + $this->semValue = new Expr\PropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule485() { @@ -2771,26 +2773,30 @@ class Php7 extends \PhpParser\ParserAbstract } protected function reduceRule486() { - $this->semValue = new Expr\ArrayDimFetch(new Expr\Variable($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(6-4)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); + $this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); } protected function reduceRule487() { - $this->semValue = $this->semStack[$this->stackPos-(3-2)]; + $this->semValue = new Expr\ArrayDimFetch(new Expr\Variable($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(6-4)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); } protected function reduceRule488() { - $this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = $this->semStack[$this->stackPos-(3-2)]; } protected function reduceRule489() { - $this->semValue = $this->parseNumString($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); + $this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule490() { - $this->semValue = $this->parseNumString('-' . $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + $this->semValue = $this->parseNumString($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } protected function reduceRule491() { + $this->semValue = $this->parseNumString('-' . $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes); + } + + protected function reduceRule492() { $this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); } } diff --git a/test/code/parser/identMode.test b/test/code/parser/identMode.test index 716859b..731b6fe 100644 --- a/test/code/parser/identMode.test +++ b/test/code/parser/identMode.test @@ -12,6 +12,8 @@ class Foo { A::b as c; d as public e; } + + public $foo, $bar = 42; } interface Bar {} trait Baz {} @@ -127,6 +129,25 @@ array( ) ) ) + 3: Stmt_Property( + flags: MODIFIER_PUBLIC (1) + props: array( + 0: Stmt_PropertyProperty( + name: Identifier( + name: foo + ) + default: null + ) + 1: Stmt_PropertyProperty( + name: Identifier( + name: bar + ) + default: Scalar_LNumber( + value: 42 + ) + ) + ) + ) ) ) 2: Stmt_Interface(