'", "T_IS_GREATER_OR_EQUAL", "T_SL", "T_SR", "'+'", "'-'", "'.'", "'*'", "'/'", "'%'", "'!'", "T_INSTANCEOF", "'~'", "T_INC", "T_DEC", "T_INT_CAST", "T_DOUBLE_CAST", "T_STRING_CAST", "T_ARRAY_CAST", "T_OBJECT_CAST", "T_BOOL_CAST", "T_UNSET_CAST", "'@'", "'['", "T_NEW", "T_CLONE", "T_EXIT", "T_IF", "T_ELSEIF", "T_ELSE", "T_ENDIF", "T_LNUMBER", "T_DNUMBER", "T_STRING", "T_STRING_VARNAME", "T_VARIABLE", "T_NUM_STRING", "T_INLINE_HTML", "T_ENCAPSED_AND_WHITESPACE", "T_CONSTANT_ENCAPSED_STRING", "T_ECHO", "T_DO", "T_WHILE", "T_ENDWHILE", "T_FOR", "T_ENDFOR", "T_FOREACH", "T_ENDFOREACH", "T_DECLARE", "T_ENDDECLARE", "T_AS", "T_SWITCH", "T_ENDSWITCH", "T_CASE", "T_DEFAULT", "T_BREAK", "T_CONTINUE", "T_GOTO", "T_FUNCTION", "T_CONST", "T_RETURN", "T_TRY", "T_CATCH", "T_FINALLY", "T_THROW", "T_USE", "T_INSTEADOF", "T_GLOBAL", "T_STATIC", "T_ABSTRACT", "T_FINAL", "T_PRIVATE", "T_PROTECTED", "T_PUBLIC", "T_VAR", "T_UNSET", "T_ISSET", "T_EMPTY", "T_HALT_COMPILER", "T_CLASS", "T_TRAIT", "T_INTERFACE", "T_EXTENDS", "T_IMPLEMENTS", "T_OBJECT_OPERATOR", "T_DOUBLE_ARROW", "T_LIST", "T_ARRAY", "T_CALLABLE", "T_CLASS_C", "T_TRAIT_C", "T_METHOD_C", "T_FUNC_C", "T_LINE", "T_FILE", "T_START_HEREDOC", "T_END_HEREDOC", "T_DOLLAR_OPEN_CURLY_BRACES", "T_CURLY_OPEN", "T_PAAMAYIM_NEKUDOTAYIM", "T_NAMESPACE", "T_NS_C", "T_DIR", "T_NS_SEPARATOR", "T_ELLIPSIS", "';'", "'{'", "'}'", "'('", "')'", "'$'", "'`'", "']'", "'\"'" , "???" ); /* @var array Map which translates lexer tokens to internal tokens */ protected static $translate = array( 0, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 48, 151, 152, 148, 47, 31, 152, 146, 147, 45, 42, 7, 43, 44, 46, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 26, 143, 36, 13, 38, 25, 60, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 61, 152, 150, 30, 152, 149, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 144, 29, 145, 50, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 27, 28, 32, 33, 34, 35, 37, 39, 40, 41, 49, 51, 52, 53, 54, 55, 56, 57, 58, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 152, 152, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 152, 152, 152, 152, 152, 152, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142 ); protected static $yyaction = array( 59, 60, 324, 61, 62,-32766,-32766,-32766, 262, 63, 64, 103, 104, 105, 341, 233,-32766,-32766,-32766, 0, 660, 661,-32766, 900,-32766,-32766,-32766,-32766,-32766,-32767, -32767,-32767,-32767,-32766, 496,-32766,-32766,-32766,-32766,-32766, 65, 66, -120,-32766,-32766,-32766, 67, 296, 68, 220, 221, 69, 70, 71, 72, 73, 74, 75, 76, 31, 232, 77, 316, 325,-32766,-32766,-32766, 841, 842, 361, 34, 900, 215, 581, 635, 362, 46, 27, 326, 187, 363,-32766, 364,-32766, 365, 35, 487, 327,-32766,-32766, -32766, 36, 37, 366, 332, 328, 38, 367, 260, 238, 78, 359, 346, 278, 279,-32766, 368, 369, 685, 39, 223, 370, 371, 372, 349, 563, 607, 373, 374, 463, 793, 57, 375, 376, 123, 847, 848, 849, 850, 844, 845, 239, 342, 82, 83, 84, 388, 851, 846, 329, 128, 587, 506,-32766, 47, 56, 260, 244, 866, 248, 40, 189, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,-32766, 233, 126, 793, 853, 321, 537, 304, 323, 246,-32766, 257, 54,-32766,-32766,-32766, 277, -32766, 636,-32766, 698,-32766, 216, 456,-32766,-32766,-32766, -32766,-32766,-32766,-32766, 122, 53,-32766,-32766, 793, 894, -32766, 328, 907,-32766, 387,-32766, 537,-32766,-32766,-32766, -32766,-32766, 368, 369, 929, 663, 605, 222, 120,-32766, 190, 563, 607, 373, 374, 537, 285, 680, 932,-32766, 934, 933,-32766,-32766,-32766, 344,-32766, 922,-32766, 321, -32766,-32766,-32766,-32766, 22, 257, 227,-32766,-32766,-32766, 793,-32766,-32766,-32766, 698, 348,-32766, 537, 119,-32766, 387,-32766, 194, 671,-32766,-32766,-32766,-32766,-32766, 224, -32766, 321,-32766, 388, 268,-32766, 329, 257, 118,-32766, -32766,-32766, 793, 505,-32766,-32766, 698, 606,-32766, 922, 213,-32766, 387, 100, 101, 102, 125,-32766,-32766,-32766, 904, 338, 249,-32766, 508, 267,-32766,-32766,-32766, 537, 343, 807, 863,-32766, -116, 547,-32766,-32766,-32766, 604, -32766, 865,-32766,-32766,-32766,-32766,-32766,-32766, 126,-32766, -32766,-32766,-32766,-32766, 793,-32766,-32766,-32766, 217, 375, -32766, 537, 130,-32766, 387,-32766, 454, 864,-32766,-32766, -32766,-32766,-32766, 225,-32766, 690,-32766,-32766,-32766,-32766, 853, 195, 578,-32766,-32766,-32766, 425, 866,-32766,-32766, 226, 579,-32766, 127, 188,-32766, 387, 351, 28, 356, 469,-32766,-32766,-32766, 117, 224, 522,-32766, 131, 286, 478, 479, 521, 537, 660, 661, 528,-32766, 684, 527, -32766,-32766,-32766, 591,-32766, 518,-32766, 129,-32766, 793, 509,-32766, 530,-32766,-32766,-32766,-32766,-32766, 511,-32766, -32766,-32766, 544, 513,-32766, 537, 600,-32766, 387,-32766, 695, 532,-32766,-32766,-32766,-32766,-32766, 233,-32766, 52, -32766, 793, 232,-32766, 51, 416, 55,-32766,-32766,-32766, 49, 58,-32766,-32766, 50, 483,-32766, 212, 265,-32766, 387, 418,-32766, 229, 495,-32766,-32766,-32766, 537, 552, 554, 692,-32766, 504, 415,-32766,-32766,-32766, 538,-32766, 403,-32766, 337,-32766, 793, 339,-32766, 537, 493, 398, -32766,-32766,-32766, 399,-32766,-32766,-32766,-32766,-32766,-32766, 537, 662,-32766, 387,-32766, 927, 488,-32766,-32766,-32766, -32766,-32766, 480,-32766, 810,-32766, 793, 402,-32766, -164, 340, 922,-32766,-32766,-32766, 266, -161,-32766,-32766, 474, 447,-32766, 336, 459,-32766, 387, 258,-32766, 472, 255, 573,-32766,-32766, 537, 609, 608, 358,-32766, 121, 852, -32766,-32766,-32766, -354,-32766, 261,-32766, -285,-32766, -353, 251,-32766, 320, 481, 0,-32766,-32766,-32766, 256,-32766, -32766,-32766, 571,-32766,-32766, 537, 245,-32766, 387,-32766, 247, 375,-32766,-32766,-32766,-32766,-32766, 42,-32766, 193, -32766, 0, 501,-32766, 408, 45, -294,-32766,-32766,-32766, 242, 338,-32766,-32766, 287, -293,-32766, 299, 44,-32766, 387, 602,-32766, 0, 514, 575,-32766,-32766, 537, 574, 572, 576,-32766, 589, 577,-32766,-32766,-32766, 590,-32766, 568,-32766, 583,-32766, 638, 629,-32766, 630, 566, 580, -32766,-32766,-32766, 623,-32766,-32766,-32766,-32766,-32766,-32766, 537, 621,-32766, 387,-32766, 582, 619,-32766,-32766,-32766, -32766,-32766, 688,-32766, 691,-32766, 548, 689,-32766, 191, 192, 515,-32766,-32766,-32766, 681, 895,-32766,-32766, 81, 507,-32766, 512, 517,-32766, 387, 519, 524, 185, 525, -32766,-32766,-32766, 526, 834, 531, 841, 842, 124, 529, -32766, 905, 673, 832, 843, 41, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 897, 885, 328, 317, 899,-32766,-32766, 80, 328, 276, 930, 931, 628, 368, 369, 627, 901, 355, 928, 368, 369,-32766, 543, 607, 373, 374, 735, 737, 563, 607, 373, 374, 236, 235, 234, 444, 237, 847, 848, 849, 850, 844, 845, 307, 259, 219, 218, 214, 263, 851, 846, 545, 328, 317, 319, 186,-32766, 516,-32766, 276, 315, 79, 48, 368, 369,-32766,-32766,-32766, 43, 328, 317, 33, 543, 607, 373, 374, 276, 32, 30, 791, 368, 369,-32766, 773,-32766,-32766,-32766, 664, 800, 543, 607, 373, 374, 797, 259, 500, 473, -353, 439, 357, 352, 546,-32767, -32767,-32767,-32767, 98, 99, 100, 101, 102, 259, 328, 305, 288, 25, 328, 706, 707, 708, 705, 704, 703, 368, 369, 24, 23, 368, 369, 328, -116, 796, 563, 607, 373, 374, 563, 607, 373, 374, 368, 369, -117, 772, 859, 448, 328, 0, 0, 563, 607, 373, 374, 879, 860, 926, 831, 368, 369, 328, 896, 794, 880, 328, 884, 696, 563, 607, 373, 374, 368, 369, 898, 816, 368, 369, 328, 804, 594, 563, 607, 373, 374, 563, 607, 373, 374, 368, 369, 537, 802, 900, 803, 503, 801, 795, 563, 607, 373, 374, 494, 0, 0, 0, 0, 0, 328, 0, 596, 0, 0, 328, 564, 0, 0, 0, 0, 368, 369, 0, 0, 0, 368, 369, 817, 603, 563, 607, 373, 374, 328, 563, 607, 373, 374, 0, 0, 0, 0, 0, 0, 368, 369, 0, 0, 0, 0, 0, 0, 0, 563, 607, 373, 374, 0, 0, 388, 0, 0, 329, 0, 0, 0, 0, 333, 0, 260 ); protected static $yycheck = array( 2, 3, 4, 5, 6, 8, 9, 10, 7, 11, 12, 45, 46, 47, 26, 49, 8, 9, 10, 0, 125, 126, 25, 73, 27, 28, 29, 30, 31, 32, 33, 34, 35, 25, 71, 27, 28, 29, 30, 31, 42, 43, 147, 8, 9, 10, 48, 73, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 8, 9, 10, 69, 70, 71, 7, 73, 7, 75, 26, 77, 78, 79, 80, 7, 82, 25, 84, 27, 86, 7, 87, 89, 8, 9, 10, 93, 94, 95, 96, 96, 98, 99, 148, 7, 102, 7, 71, 105, 106, 25, 107, 108, 145, 135, 136, 113, 114, 115, 7, 116, 117, 118, 119, 76, 12, 61, 124, 125, 7, 127, 128, 129, 130, 131, 132, 133, 144, 8, 9, 10, 138, 139, 140, 141, 61, 143, 144, 8, 146, 61, 148, 149, 117, 151, 25, 13, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 65, 49, 144, 12, 134, 97, 71, 72, 7, 122, 75, 103, 61, 78, 79, 80, 7, 82, 143, 84, 112, 86, 31, 81, 89, 8, 9, 10, 93, 94, 95, 144, 61, 98, 99, 12, 73, 102, 96, 147, 105, 106, 25, 71, 27, 28, 29, 30, 113, 107, 108, 145, 147, 145, 31, 144, 65, 13, 116, 117, 118, 119, 71, 7, 143, 71, 75, 73, 74, 78, 79, 80, 7, 82, 76, 84, 97, 86, 143, 144, 89, 147, 103, 31, 93, 94, 95, 12, 65, 98, 99, 112, 71, 102, 71, 144, 105, 106, 75, 13, 73, 78, 79, 80, 113, 82, 31, 84, 97, 86, 138, 148, 89, 141, 103, 144, 93, 94, 95, 12, 71, 98, 99, 112, 145, 102, 76, 123, 105, 106, 42, 43, 44, 26, 143, 144, 113, 71, 141, 76, 65, 144, 61, 8, 9, 10, 71, 7, 147, 151, 75, 147, 143, 78, 79, 80, 145, 82, 71, 84, 25, 86, 27, 28, 89, 144, 143, 144, 93, 94, 95, 12, 65, 98, 99, 148, 124, 102, 71, 144, 105, 106, 75, 148, 134, 78, 79, 80, 113, 82, 31, 84, 143, 86, 8, 9, 89, 134, 13, 143, 93, 94, 95, 122, 117, 98, 99, 7, 143, 102, 144, 13, 105, 106, 66, 67, 66, 67, 143, 144, 113, 13, 31, 26, 65, 91, 92, 100, 101, 26, 71, 125, 126, 26, 75, 143, 144, 78, 79, 80, 26, 82, 26, 84, 26, 86, 12, 26, 89, 26, 143, 144, 93, 94, 95, 26, 65, 98, 99, 143, 144, 102, 71, 31, 105, 106, 75, 143, 144, 78, 79, 80, 113, 82, 49, 84, 61, 86, 12, 62, 89, 61, 71, 61, 93, 94, 95, 61, 61, 98, 99, 61, 68, 102, 88, 76, 105, 106, 88, 65, 88, 73, 143, 144, 113, 71, 71, 71, 71, 75, 71, 71, 78, 79, 80, 71, 82, 71, 84, 71, 86, 12, 71, 89, 71, 71, 71, 93, 94, 95, 71, 65, 98, 99, 143, 144, 102, 71, 147, 105, 106, 75, 71, 73, 78, 79, 80, 113, 82, 73, 84, 73, 86, 12, 73, 89, 73, 80, 76, 93, 94, 95, 76, 88, 98, 99, 103, 88, 102, 96, 90, 105, 106, 104, 65, 90, 120, 143, 144, 113, 71, 117, 117, 96, 75, 123, 134, 78, 79, 80, 122, 82, 120, 84, 137, 86, 122, 137, 89, 141, 150, -1, 93, 94, 95, 121, 65, 98, 99, 143, 144, 102, 71, 122, 105, 106, 75, 122, 124, 78, 79, 80, 113, 82, 123, 84, 123, 86, -1, 137, 89, 141, 143, 137, 93, 94, 95, 137, 141, 98, 99, 137, 137, 102, 137, 143, 105, 106, 142, 65, -1, 143, 143, 144, 113, 71, 143, 143, 143, 75, 143, 143, 78, 79, 80, 143, 82, 143, 84, 143, 86, 143, 143, 89, 143, 143, 143, 93, 94, 95, 143, 65, 98, 99, 143, 144, 102, 71, 143, 105, 106, 75, 143, 143, 78, 79, 80, 113, 82, 143, 84, 143, 86, 143, 143, 89, 42, 43, 143, 93, 94, 95, 143, 145, 98, 99, 144, 144, 102, 144, 144, 105, 106, 144, 144, 61, 144, 143, 144, 113, 144, 147, 144, 69, 70, 144, 144, 73, 145, 145, 145, 77, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 145, 145, 96, 97, 145, 143, 144, 146, 96, 103, 145, 145, 145, 107, 108, 145, 145, 145, 145, 107, 108, 146, 116, 117, 118, 119, 51, 52, 116, 117, 118, 119, 146, 146, 146, 125, 146, 127, 128, 129, 130, 131, 132, 133, 138, 146, 146, 146, 146, 139, 140, 145, 96, 97, 146, 146, 146, 145, 148, 103, 146, 146, 146, 107, 108, 8, 9, 10, 146, 96, 97, 146, 116, 117, 118, 119, 103, 146, 146, 149, 107, 108, 25, 147, 27, 28, 29, 147, 147, 116, 117, 118, 119, 147, 138, 147, 147, 122, 147, 147, 147, 145, 36, 37, 38, 39, 40, 41, 42, 43, 44, 138, 96, 147, 147, 147, 96, 106, 107, 108, 109, 110, 111, 107, 108, 147, 147, 107, 108, 96, 147, 147, 116, 117, 118, 119, 116, 117, 118, 119, 107, 108, 147, 147, 147, 147, 96, -1, -1, 116, 117, 118, 119, 150, 150, 150, 150, 107, 108, 96, 150, 145, 150, 96, 150, 145, 116, 117, 118, 119, 107, 108, 150, 150, 107, 108, 96, 150, 145, 116, 117, 118, 119, 116, 117, 118, 119, 107, 108, 71, 150, 73, 150, 83, 150, 145, 116, 117, 118, 119, 85, -1, -1, -1, -1, -1, 96, -1, 145, -1, -1, 96, 145, -1, -1, -1, -1, 107, 108, -1, -1, -1, 107, 108, 106, 145, 116, 117, 118, 119, 96, 116, 117, 118, 119, -1, -1, -1, -1, -1, -1, 107, 108, -1, -1, -1, -1, -1, -1, -1, 116, 117, 118, 119, -1, -1, 138, -1, -1, 141, -1, -1, -1, -1, 146, -1, 148 ); protected static $yybase = array( 0, 683, 633, 700, 794, 639, 115, -1, 842, 807, 743, 790, 777, 837, 760, 747, 861, 861, 861, 861, 861, 402, 389, 370, 396, 370, 394, -2, -2, -2, 364, 196, 196, 557, 196, 248, 439, 407, 482, 108, 280, 164, 332, 514, 514, 514, 514, 589, 589, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 48, 522, 435, 474, 487, 486, 488, 490, 711, 379, 663, 600, 598, 391, 586, 583, 582, 568, 567, 599, 566, 423, 541, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 135, 359, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 80, 80, 56, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 308, 784, 190, 8, -3, -3, -3, -3, 702, 793, 793, 793, 793, 152, 81, 184, 225, 225, 467, 467, 390, 564, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 456, 412, 261, 261, 602, 602, -105, -105, -105, -105, 279, 236, 223, 171, 31, -37, 392, 239, 239, 239, 459, 425, 455, 194, -34, -34, -34, 145, 145, 145, 145, 170, 545, 145, 145, 145, 124, -26, -26, 167, 208, 453, 597, 458, 594, 265, 469, 60, 431, 431, 200, 446, 321, 323, 300, 430, -12, 200, 48, 260, 297, 84, 506, 384, 533, 182, 229, 238, 254, 289, 144, 136, 107, 725, 723, 65, 79, 441, 78, 43, 144, 177, 542, 94, 174, 529, 222, 405, 652, 432, 659, 413, 426, 432, 449, 405, 643, 643, 643, 643, 405, 426, 659, 659, 405, 390, 659, 63, 405, 429, 426, 445, 643, 481, 538, 432, 454, 457, 659, 659, 659, 413, 405, 643, 436, 479, 72, 659, 643, 436, 405, 449, 19, 387, 399, 649, 642, 635, 428, 546, 438, 437, 627, 626, 588, 419, 421, 628, 658, 463, 491, 424, 381, 403, 393, 388, 473, 395, 464, 446, 470, 398, 447, 433, 447, 771, 480, 478, 468, 450, 495, 371, 463, 383, 138, 548, 463, 673, 693, 657, 417, 615, 678, 447, 769, 475, 117, 217, 614, 452, 408, 447, 613, 447, 549, 447, 668, 444, 593, 463, 398, 398, 398, 667, 767, 754, 750, 749, 741, 739, 737, 400, 733, 497, 680, 92, 636, 430, 477, 409, 499, 1, 732, 447, 447, 552, 545, 447, 501, 462, 706, 502, 676, 476, 731, 425, 679, 447, 460, 730, 1, 376, 397, 722, 504, 553, 641, 555, 443, 724, 629, 559, 259, 592, 380, 505, 705, 695, 710, 510, 358, 565, 427, 451, 401, 617, 518, 675, 448, 465, 442, 385, 561, 410, 694, 523, 531, 534, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, 0, 0, 0, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 125, 125, 125, 125, 125, 125, 125, 125, 0, -34, -34, -34, -34, 738, 738, 738, 845, 845, 845, 845, 845, 845, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 738, 738, -34, -34, 845, 845, 145, 145, 145, 145, 145, -26, -26, -26, 136, 145, -26, -50, -50, -50, -26, -26, -26, 136, 0, 0, 0, 0, 0, 0, 0, 426, -50, 0, 0, 0, 659, 0, 0, 0, -50, 307, 307, 307, 307, 1, 144, 0, 426, 426, 0, 454, 0, 0, 0, 659, 0, 0, 0, 0, 0, 0, 117, 615, 313, 0, 0, 0, 0, 0, 0, 0, 0, 373, 373, 0, 0, 400, 0, 0, 0, 0, 313, 0, 0, 1 ); protected static $yydefault = array( 3,32767,32767, 1,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767, 109, 101, 115, 100, 111,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767, 380, 380,32767, 337,32767,32767,32767,32767,32767, 32767,32767,32767, 182, 182, 182,32767,32767,32767, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369,32767, 32767,32767,32767,32767, 260,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,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, 265, 385,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767, 241, 242, 244, 245, 181, 370, 134, 266, 384, 180, 208, 210, 259, 209, 186, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 185, 238, 237, 206, 334, 334, 337,32767,32767, 32767,32767,32767,32767,32767,32767, 207, 211, 213, 212, 228, 229, 226, 227, 184, 230, 231, 232, 233, 166, 166, 166,32767,32767, 379, 379,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767, 167,32767, 220, 221, 295, 295, 125, 125, 125, 125, 125,32767, 32767,32767,32767,32767, 303,32767,32767,32767,32767,32767, 305,32767, 215, 216, 214,32767,32767,32767,32767,32767, 32767,32767,32767,32767, 342, 304,32767,32767,32767,32767, 32767,32767,32767,32767, 355, 291,32767,32767,32767, 284, 112, 114, 62, 321,32767,32767,32767,32767,32767, 360, 32767,32767,32767,32767,32767,32767, 392,32767, 355,32767, 32767,32767,32767,32767,32767, 236,32767,32767, 359, 353, 32767,32767,32767,32767,32767, 66, 300,32767, 306,32767, 32767,32767,32767, 66,32767,32767,32767,32767, 66,32767, 358, 357, 66,32767, 285, 336, 66, 79,32767, 77, 32767, 98, 98,32767,32767, 81, 332, 348,32767,32767, 66,32767, 273, 68, 336,32767,32767, 273, 66,32767, 32767, 4, 310,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767, 286,32767,32767, 32767, 256, 257, 344,32767, 345,32767, 284,32767, 224, 203,32767, 205,32767,32767, 289, 292,32767,32767,32767, 6, 18, 143,32767, 287,32767, 189,32767,32767,32767, 32767, 387,32767,32767, 183,32767,32767, 20,32767, 139, 32767, 64,32767, 377,32767,32767, 353, 288, 217, 218, 219,32767,32767,32767,32767,32767,32767,32767,32767, 354, 32767,32767,32767, 119,32767, 321,32767,32767,32767, 80, 32767, 187, 135,32767,32767, 386,32767,32767,32767,32767, 32767, 341,32767,32767,32767, 65,32767,32767, 82,32767, 32767, 353,32767,32767,32767,32767,32767,32767,32767,32767, 178,32767,32767,32767,32767,32767, 353,32767, 123,32767, 32767,32767,32767,32767,32767,32767, 4,32767, 160,32767, 32767,32767,32767,32767,32767,32767, 26, 26, 3, 26, 106, 26, 146, 3, 98, 98, 59, 146, 26, 146, 26, 26, 26, 26, 26, 26, 26, 153, 26, 26, 26, 26, 26 ); protected static $yygoto = array( 161, 135, 135, 140, 135, 161, 136, 137, 138, 143, 145, 169, 163, 159, 159, 159, 159, 140, 140, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 155, 156, 157, 158, 167, 134, 755, 756, 389, 758, 779, 780, 781, 782, 783, 784, 785, 787, 723, 139, 141, 142, 144, 165, 166, 168, 184, 196, 197, 198, 199, 200, 201, 202, 203, 205, 206, 207, 208, 230, 231, 252, 253, 254, 428, 429, 430, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 146, 147, 148, 162, 149, 164, 150, 182, 151, 152, 153, 183, 154, 132, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 309, 486, 423, 423, 451, 419, 421, 421, 390, 392, 411, 426, 452, 455, 465, 471, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 651, 651, 911, 911, 818, 818, 659, 659, 659, 659, 659, 210, 406, 211, 585, 497, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 616, 616, 616, 616, 270, 424, 611, 617, 492, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 541, 541, 541, 250, 394, 394, 5, 241, 16, 883, 6, 395, 395, 540, 540, 540, 915, 7, 666, 17, 18, 8, 19, 9, 10, 11, 290, 20, 12, 13, 14, 15, 477, 637, 622, 620, 618, 620, 510, 397, 646, 641, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 432, 433, 434, 435, 436, 437, 438, 440, 467, 835, 840, 542, 542, 542, 460, 464, 502, 776, 26, 21, 284, 297, 814, 815, 557, 677, 626, 857, 858, 873, 712, 657, 871, 441, 400, 485, 921, 921, 812, 882, 812, 890, 890, 1, 29, 924, 921, 813, 2, 482, 908, 400, 400, 302, 906, 906, 906, 431, 767, 291, 405, 924, 924, 409, 298, 298, 298, 420, 655, 889, 468, 273, 313, 669, 405, 405, 721, 457, 484, 298, 549, 353, 417, 702, 314, 891, 891, 308, 520, 490, 396, 396, 830, 829, 856, 400, 809, 310, 271, 272, 555, 625, 674, 868, 404, 489, 710, 0, 0, 0, 0, 0, 0, 427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 410 ); protected static $yygcheck = array( 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, 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, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 55, 55, 55, 55, 39, 39, 39, 39, 39, 39, 39, 46, 77, 46, 32, 39, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 39, 39, 39, 39, 50, 85, 39, 39, 39, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 7, 7, 7, 100, 91, 91, 14, 100, 14, 59, 14, 94, 94, 6, 6, 6, 114, 14, 61, 14, 14, 14, 14, 14, 14, 14, 29, 14, 14, 14, 14, 14, 103, 6, 6, 6, 6, 6, 6, 6, 6, 6, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 86, 86, 86, 86, 86, 86, 86, 86, 86, 16, 59, 8, 8, 8, 42, 42, 42, 16, 16, 16, 16, 5, 59, 59, 13, 13, 13, 13, 13, 13, 13, 13, 106, 16, 4, 31, 115, 115, 59, 59, 59, 93, 93, 2, 16, 115, 115, 59, 2, 16, 112, 4, 4, 30, 93, 93, 93, 26, 78, 40, 26, 115, 115, 40, 98, 98, 98, 40, 57, 93, 48, 48, 48, 62, 26, 26, 77, 22, 22, 98, 11, 40, 5, 74, 74, 92, 92, 98, 52, 40, 97, 97, 99, 99, 102, 4, 89, 10, 50, 50, 12, 49, 63, 105, 4, 84, 76, -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 77 ); protected static $yygbase = array( 0, 0, -215, 0, 25, 12, 209, 196, 260, 0, 26, 53, 7, 86, -304, 0, -57, 0, 0, 0, 0, 0, 283, 0, 0, -30, 277, 0, 0, 177, 84, 72, 134, -99, 0, 0, 0, 0, 0, -83, -19, 0, 29, 0, 0, 0, -361, 0, 64, 2, -166, 0, 52, 0, 0, -67, 0, 80, 0, -58, 0, 180, 38, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, -3, 110, 75, 0, 0, 0, 0, 0, -2, 145, 200, 0, 0, 23, 0, -31, 103, 59, -24, 0, 0, 108, 69, 96, -44, 54, 57, 43, 0, -1, 95, 0, 0, 0, 0, 0, 85, 0, 179, 46, 0 ); protected static $yygdefault = array( -32768, 360, 3, 535, 377, 401, 560, 561, 562, 293, 292, 550, 556, 461, 4, 558, 768, 280, 565, 281, 470, 567, 413, 569, 570, 133, 378, 294, 295, 414, 301, 458, 584, 204, 300, 586, 282, 588, 593, 283, 491, 476, 442, 379, 345, 453, 209, 422, 449, 624, 269, 632, 523, 640, 643, 380, 443, 654, 350, 811, 306, 665, 670, 675, 678, 322, 311, 466, 682, 683, 243, 687, 498, 499, 701, 228, 709, 722, 318, 786, 788, 381, 382, 407, 475, 393, 412, 805, 312, 808, 383, 384, 330, 331, 826, 823, 275, 876, 274, 347, 240, 861, 862, 462, 354, 914, 872, 264, 385, 386, 289, 303, 909, 335, 916, 923, 450 ); protected static $yylhs = array( 0, 1, 2, 2, 4, 4, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 9, 9, 11, 11, 11, 11, 10, 10, 12, 14, 14, 15, 15, 15, 15, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 36, 36, 38, 37, 37, 30, 30, 40, 40, 41, 41, 7, 8, 8, 8, 43, 43, 43, 44, 44, 47, 47, 45, 45, 48, 48, 23, 23, 32, 32, 35, 35, 34, 34, 49, 24, 24, 24, 24, 50, 50, 51, 51, 52, 52, 21, 21, 17, 17, 53, 19, 19, 54, 18, 18, 20, 20, 31, 31, 31, 42, 42, 56, 56, 57, 57, 58, 58, 58, 58, 59, 59, 59, 60, 60, 61, 61, 27, 27, 62, 62, 62, 28, 28, 63, 63, 46, 46, 64, 64, 64, 64, 69, 69, 70, 70, 71, 71, 71, 71, 72, 73, 73, 68, 68, 65, 65, 67, 67, 75, 75, 74, 74, 74, 74, 74, 74, 66, 66, 76, 76, 29, 29, 22, 22, 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, 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, 16, 16, 26, 26, 81, 81, 82, 82, 82, 77, 84, 84, 88, 88, 89, 90, 90, 90, 90, 90, 90, 94, 94, 39, 39, 39, 78, 78, 95, 95, 91, 91, 96, 96, 96, 96, 96, 79, 79, 79, 83, 83, 83, 87, 87, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 13, 13, 13, 13, 13, 13, 80, 80, 80, 80, 102, 102, 103, 103, 105, 105, 104, 104, 106, 106, 33, 33, 33, 33, 108, 108, 107, 107, 107, 107, 107, 109, 109, 93, 93, 97, 97, 92, 92, 110, 110, 110, 110, 98, 98, 98, 98, 86, 86, 99, 99, 99, 55, 111, 111, 112, 112, 112, 85, 85, 113, 113, 114, 114, 114, 114, 100, 100, 100, 100, 115, 115, 115, 115, 115, 115, 115, 116, 116, 116 ); protected static $yylen = array( 1, 1, 2, 0, 1, 3, 1, 1, 1, 1, 1, 3, 5, 4, 3, 3, 3, 1, 1, 3, 2, 4, 3, 1, 3, 2, 0, 1, 1, 1, 1, 3, 5, 8, 3, 5, 9, 3, 2, 3, 2, 3, 2, 3, 2, 3, 3, 3, 1, 2, 5, 7, 9, 5, 1, 6, 3, 3, 2, 0, 2, 8, 0, 4, 1, 3, 0, 1, 0, 1, 9, 7, 6, 5, 1, 2, 2, 0, 2, 0, 2, 0, 2, 1, 3, 1, 4, 1, 4, 1, 4, 1, 3, 3, 3, 4, 4, 5, 0, 2, 4, 3, 1, 1, 1, 4, 0, 2, 3, 0, 2, 4, 0, 2, 0, 3, 1, 2, 1, 1, 0, 1, 3, 4, 6, 0, 1, 1, 1, 2, 3, 3, 1, 3, 1, 2, 3, 1, 1, 2, 4, 3, 1, 1, 3, 2, 0, 3, 3, 8, 3, 1, 3, 0, 2, 4, 5, 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, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 5, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 3, 2, 1, 9, 10, 3, 3, 2, 4, 4, 3, 4, 4, 4, 3, 0, 4, 1, 3, 2, 2, 4, 6, 2, 2, 4, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 0, 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, 1, 3, 2, 2, 4, 3, 1, 3, 3, 3, 1, 1, 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, 3, 6, 4, 4, 4, 4, 1, 4, 0, 1, 1, 3, 1, 4, 3, 1, 1, 1, 0, 0, 2, 3, 1, 3, 1, 4, 2, 2, 2, 1, 2, 1, 4, 3, 3, 3, 6, 3, 1, 1, 1 ); protected $yyval; protected $yyastk; protected $stackPos; protected $lexer; /** * Creates a parser instance. * * @param Lexer $lexer A lexer */ public function __construct(Lexer $lexer) { $this->lexer = $lexer; } /** * Parses PHP code into a node tree. * * @param string $code The source code to parse * * @return Node[] Array of statements */ public function parse($code) { $this->lexer->startLexing($code); // We start off with no lookahead-token $tokenId = self::TOKEN_NONE; // The attributes for a node are taken from the first and last token of the node. // From the first token only the startAttributes are taken and from the last only // the endAttributes. Both are merged using the array union operator (+). $startAttributes = array('startLine' => 1); $endAttributes = array(); // In order to figure out the attributes for the starting token, we have to keep // them in a stack $attributeStack = array($startAttributes); // Start off in the initial state and keep a stack of previous states $state = 0; $stateStack = array($state); // AST stack (?) $this->yyastk = array(); // Current position in the stack(s) $this->stackPos = 0; for (;;) { if (self::$yybase[$state] == 0) { $yyn = self::$yydefault[$state]; } else { if ($tokenId === self::TOKEN_NONE) { // Fetch the next token id from the lexer and fetch additional info by-ref. // The end attributes are fetched into a temporary variable and only set once the token is really // shifted (not during read). Otherwise you would sometimes get off-by-one errors, when a rule is // reduced after a token was read but not yet shifted. $origTokenId = $this->lexer->getNextToken($tokenValue, $startAttributes, $nextEndAttributes); // map the lexer token id to the internally used token id's $tokenId = $origTokenId >= 0 && $origTokenId < self::TOKEN_MAP_SIZE ? self::$translate[$origTokenId] : self::TOKEN_INVALID; if ($tokenId === self::TOKEN_INVALID) { throw new \RangeException(sprintf( 'The lexer returned an invalid token (id=%d, value=%s)', $origTokenId, $tokenValue )); } $attributeStack[$this->stackPos] = $startAttributes; } if ((($yyn = self::$yybase[$state] + $tokenId) >= 0 && $yyn < self::YYLAST && self::$yycheck[$yyn] == $tokenId || ($state < self::YY2TBLSTATE && ($yyn = self::$yybase[$state + self::YYNLSTATES] + $tokenId) >= 0 && $yyn < self::YYLAST && self::$yycheck[$yyn] == $tokenId)) && ($yyn = self::$yyaction[$yyn]) != self::YYDEFAULT) { /* * >= YYNLSTATE: shift and reduce * > 0: shift * = 0: accept * < 0: reduce * = -YYUNEXPECTED: error */ if ($yyn > 0) { /* shift */ ++$this->stackPos; $stateStack[$this->stackPos] = $state = $yyn; $this->yyastk[$this->stackPos] = $tokenValue; $attributeStack[$this->stackPos] = $startAttributes; $endAttributes = $nextEndAttributes; $tokenId = self::TOKEN_NONE; if ($yyn < self::YYNLSTATES) continue; /* $yyn >= YYNLSTATES means shift-and-reduce */ $yyn -= self::YYNLSTATES; } else { $yyn = -$yyn; } } else { $yyn = self::$yydefault[$state]; } } for (;;) { /* reduce/error */ if ($yyn == 0) { /* accept */ return $this->yyval; } elseif ($yyn != self::YYUNEXPECTED) { /* reduce */ try { $this->{'yyn' . $yyn}( $attributeStack[$this->stackPos - self::$yylen[$yyn]] + $endAttributes ); } catch (Error $e) { if (-1 === $e->getRawLine()) { $e->setRawLine($startAttributes['startLine']); } throw $e; } /* Goto - shift nonterminal */ $this->stackPos -= self::$yylen[$yyn]; $yyn = self::$yylhs[$yyn]; if (($yyp = self::$yygbase[$yyn] + $stateStack[$this->stackPos]) >= 0 && $yyp < self::YYGLAST && self::$yygcheck[$yyp] == $yyn) { $state = self::$yygoto[$yyp]; } else { $state = self::$yygdefault[$yyn]; } ++$this->stackPos; $stateStack[$this->stackPos] = $state; $this->yyastk[$this->stackPos] = $this->yyval; $attributeStack[$this->stackPos] = $startAttributes; } else { /* error */ $expected = array(); $base = self::$yybase[$state]; for ($i = 0; $i < self::TOKEN_MAP_SIZE; ++$i) { $n = $base + $i; if ($n >= 0 && $n < self::YYLAST && self::$yycheck[$n] == $i || $state < self::YY2TBLSTATE && ($n = self::$yybase[$state + self::YYNLSTATES] + $i) >= 0 && $n < self::YYLAST && self::$yycheck[$n] == $i ) { if (self::$yyaction[$n] != self::YYUNEXPECTED) { if (count($expected) == 4) { /* Too many expected tokens */ $expected = array(); break; } $expected[] = self::$terminals[$i]; } } } $expectedString = ''; if ($expected) { $expectedString = ', expecting ' . implode(' or ', $expected); } throw new Error( 'Syntax error, unexpected ' . self::$terminals[$tokenId] . $expectedString, $startAttributes['startLine'] ); } if ($state < self::YYNLSTATES) break; /* >= YYNLSTATES means shift-and-reduce */ $yyn = $state - self::YYNLSTATES; } } } protected function yyn0() { $this->yyval = $this->yyastk[$this->stackPos]; } protected function yyn1($attributes) { $this->yyval = Node\Stmt\Namespace_::postprocess($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn2($attributes) { if (is_array($this->yyastk[$this->stackPos-(2-2)])) { $this->yyval = array_merge($this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)]); } else { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; }; } protected function yyn3($attributes) { $this->yyval = array(); } protected function yyn4($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn5($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn6($attributes) { $this->yyval = new Node\Name($this->yyastk[$this->stackPos-(1-1)], $attributes); } protected function yyn7($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn8($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn9($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn10($attributes) { $this->yyval = new Node\Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $attributes); } protected function yyn11($attributes) { $this->yyval = new Node\Stmt\Namespace_($this->yyastk[$this->stackPos-(3-2)], null, $attributes); } protected function yyn12($attributes) { $this->yyval = new Node\Stmt\Namespace_($this->yyastk[$this->stackPos-(5-2)], $this->yyastk[$this->stackPos-(5-4)], $attributes); } protected function yyn13($attributes) { $this->yyval = new Node\Stmt\Namespace_(null, $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn14($attributes) { $this->yyval = new Node\Stmt\Use_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn15($attributes) { $this->yyval = new Node\Stmt\Const_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn16($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn17($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn18($attributes) { $this->yyval = new Node\Stmt\UseUse($this->yyastk[$this->stackPos-(1-1)], null, $attributes); } protected function yyn19($attributes) { $this->yyval = new Node\Stmt\UseUse($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn20($attributes) { $this->yyval = new Node\Stmt\UseUse($this->yyastk[$this->stackPos-(2-2)], null, $attributes); } protected function yyn21($attributes) { $this->yyval = new Node\Stmt\UseUse($this->yyastk[$this->stackPos-(4-2)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn22($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn23($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn24($attributes) { $this->yyval = new Node\Const_($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn25($attributes) { if (is_array($this->yyastk[$this->stackPos-(2-2)])) { $this->yyval = array_merge($this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)]); } else { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; }; } protected function yyn26($attributes) { $this->yyval = array(); } protected function yyn27($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn28($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn29($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn30($attributes) { throw new Error('__HALT_COMPILER() can only be used from the outermost scope'); } protected function yyn31($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn32($attributes) { $this->yyval = new Node\Stmt\If_($this->yyastk[$this->stackPos-(5-2)], array('stmts' => is_array($this->yyastk[$this->stackPos-(5-3)]) ? $this->yyastk[$this->stackPos-(5-3)] : array($this->yyastk[$this->stackPos-(5-3)]), 'elseifs' => $this->yyastk[$this->stackPos-(5-4)], 'else' => $this->yyastk[$this->stackPos-(5-5)]), $attributes); } protected function yyn33($attributes) { $this->yyval = new Node\Stmt\If_($this->yyastk[$this->stackPos-(8-2)], array('stmts' => $this->yyastk[$this->stackPos-(8-4)], 'elseifs' => $this->yyastk[$this->stackPos-(8-5)], 'else' => $this->yyastk[$this->stackPos-(8-6)]), $attributes); } protected function yyn34($attributes) { $this->yyval = new Node\Stmt\While_($this->yyastk[$this->stackPos-(3-2)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn35($attributes) { $this->yyval = new Node\Stmt\Do_($this->yyastk[$this->stackPos-(5-4)], is_array($this->yyastk[$this->stackPos-(5-2)]) ? $this->yyastk[$this->stackPos-(5-2)] : array($this->yyastk[$this->stackPos-(5-2)]), $attributes); } protected function yyn36($attributes) { $this->yyval = new Node\Stmt\For_(array('init' => $this->yyastk[$this->stackPos-(9-3)], 'cond' => $this->yyastk[$this->stackPos-(9-5)], 'loop' => $this->yyastk[$this->stackPos-(9-7)], 'stmts' => $this->yyastk[$this->stackPos-(9-9)]), $attributes); } protected function yyn37($attributes) { $this->yyval = new Node\Stmt\Switch_($this->yyastk[$this->stackPos-(3-2)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn38($attributes) { $this->yyval = new Node\Stmt\Break_(null, $attributes); } protected function yyn39($attributes) { $this->yyval = new Node\Stmt\Break_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn40($attributes) { $this->yyval = new Node\Stmt\Continue_(null, $attributes); } protected function yyn41($attributes) { $this->yyval = new Node\Stmt\Continue_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn42($attributes) { $this->yyval = new Node\Stmt\Return_(null, $attributes); } protected function yyn43($attributes) { $this->yyval = new Node\Stmt\Return_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn44($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn45($attributes) { $this->yyval = new Node\Stmt\Global_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn46($attributes) { $this->yyval = new Node\Stmt\Static_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn47($attributes) { $this->yyval = new Node\Stmt\Echo_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn48($attributes) { $this->yyval = new Node\Stmt\InlineHTML($this->yyastk[$this->stackPos-(1-1)], $attributes); } protected function yyn49($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn50($attributes) { $this->yyval = new Node\Stmt\Unset_($this->yyastk[$this->stackPos-(5-3)], $attributes); } protected function yyn51($attributes) { $this->yyval = new Node\Stmt\Foreach_($this->yyastk[$this->stackPos-(7-3)], $this->yyastk[$this->stackPos-(7-5)][0], array('keyVar' => null, 'byRef' => $this->yyastk[$this->stackPos-(7-5)][1], 'stmts' => $this->yyastk[$this->stackPos-(7-7)]), $attributes); } protected function yyn52($attributes) { $this->yyval = new Node\Stmt\Foreach_($this->yyastk[$this->stackPos-(9-3)], $this->yyastk[$this->stackPos-(9-7)][0], array('keyVar' => $this->yyastk[$this->stackPos-(9-5)], 'byRef' => $this->yyastk[$this->stackPos-(9-7)][1], 'stmts' => $this->yyastk[$this->stackPos-(9-9)]), $attributes); } protected function yyn53($attributes) { $this->yyval = new Node\Stmt\Declare_($this->yyastk[$this->stackPos-(5-3)], $this->yyastk[$this->stackPos-(5-5)], $attributes); } protected function yyn54($attributes) { $this->yyval = array(); /* means: no statement */ } protected function yyn55($attributes) { $this->yyval = new Node\Stmt\TryCatch($this->yyastk[$this->stackPos-(6-3)], $this->yyastk[$this->stackPos-(6-5)], $this->yyastk[$this->stackPos-(6-6)], $attributes); } protected function yyn56($attributes) { $this->yyval = new Node\Stmt\Throw_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn57($attributes) { $this->yyval = new Node\Stmt\Goto_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn58($attributes) { $this->yyval = new Node\Stmt\Label($this->yyastk[$this->stackPos-(2-1)], $attributes); } protected function yyn59($attributes) { $this->yyval = array(); } protected function yyn60($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn61($attributes) { $this->yyval = new Node\Stmt\Catch_($this->yyastk[$this->stackPos-(8-3)], substr($this->yyastk[$this->stackPos-(8-4)], 1), $this->yyastk[$this->stackPos-(8-7)], $attributes); } protected function yyn62($attributes) { $this->yyval = null; } protected function yyn63($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-3)]; } protected function yyn64($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn65($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn66($attributes) { $this->yyval = false; } protected function yyn67($attributes) { $this->yyval = true; } protected function yyn68($attributes) { $this->yyval = false; } protected function yyn69($attributes) { $this->yyval = true; } protected function yyn70($attributes) { $this->yyval = new Node\Stmt\Function_($this->yyastk[$this->stackPos-(9-3)], array('byRef' => $this->yyastk[$this->stackPos-(9-2)], 'params' => $this->yyastk[$this->stackPos-(9-5)], 'stmts' => $this->yyastk[$this->stackPos-(9-8)]), $attributes); } protected function yyn71($attributes) { $this->yyval = new Node\Stmt\Class_($this->yyastk[$this->stackPos-(7-2)], array('type' => $this->yyastk[$this->stackPos-(7-1)], 'extends' => $this->yyastk[$this->stackPos-(7-3)], 'implements' => $this->yyastk[$this->stackPos-(7-4)], 'stmts' => $this->yyastk[$this->stackPos-(7-6)]), $attributes); } protected function yyn72($attributes) { $this->yyval = new Node\Stmt\Interface_($this->yyastk[$this->stackPos-(6-2)], array('extends' => $this->yyastk[$this->stackPos-(6-3)], 'stmts' => $this->yyastk[$this->stackPos-(6-5)]), $attributes); } protected function yyn73($attributes) { $this->yyval = new Node\Stmt\Trait_($this->yyastk[$this->stackPos-(5-2)], $this->yyastk[$this->stackPos-(5-4)], $attributes); } protected function yyn74($attributes) { $this->yyval = 0; } protected function yyn75($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_ABSTRACT; } protected function yyn76($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_FINAL; } protected function yyn77($attributes) { $this->yyval = null; } protected function yyn78($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(2-2)]; } protected function yyn79($attributes) { $this->yyval = array(); } protected function yyn80($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(2-2)]; } protected function yyn81($attributes) { $this->yyval = array(); } protected function yyn82($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(2-2)]; } protected function yyn83($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn84($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn85($attributes) { $this->yyval = is_array($this->yyastk[$this->stackPos-(1-1)]) ? $this->yyastk[$this->stackPos-(1-1)] : array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn86($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-2)]; } protected function yyn87($attributes) { $this->yyval = is_array($this->yyastk[$this->stackPos-(1-1)]) ? $this->yyastk[$this->stackPos-(1-1)] : array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn88($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-2)]; } protected function yyn89($attributes) { $this->yyval = is_array($this->yyastk[$this->stackPos-(1-1)]) ? $this->yyastk[$this->stackPos-(1-1)] : array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn90($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-2)]; } protected function yyn91($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn92($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn93($attributes) { $this->yyval = new Node\Stmt\DeclareDeclare($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn94($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn95($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-3)]; } protected function yyn96($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-2)]; } protected function yyn97($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(5-3)]; } protected function yyn98($attributes) { $this->yyval = array(); } protected function yyn99($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn100($attributes) { $this->yyval = new Node\Stmt\Case_($this->yyastk[$this->stackPos-(4-2)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn101($attributes) { $this->yyval = new Node\Stmt\Case_(null, $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn102() { $this->yyval = $this->yyastk[$this->stackPos]; } protected function yyn103() { $this->yyval = $this->yyastk[$this->stackPos]; } protected function yyn104($attributes) { $this->yyval = is_array($this->yyastk[$this->stackPos-(1-1)]) ? $this->yyastk[$this->stackPos-(1-1)] : array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn105($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-2)]; } protected function yyn106($attributes) { $this->yyval = array(); } protected function yyn107($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn108($attributes) { $this->yyval = new Node\Stmt\ElseIf_($this->yyastk[$this->stackPos-(3-2)], is_array($this->yyastk[$this->stackPos-(3-3)]) ? $this->yyastk[$this->stackPos-(3-3)] : array($this->yyastk[$this->stackPos-(3-3)]), $attributes); } protected function yyn109($attributes) { $this->yyval = array(); } protected function yyn110($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn111($attributes) { $this->yyval = new Node\Stmt\ElseIf_($this->yyastk[$this->stackPos-(4-2)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn112($attributes) { $this->yyval = null; } protected function yyn113($attributes) { $this->yyval = new Node\Stmt\Else_(is_array($this->yyastk[$this->stackPos-(2-2)]) ? $this->yyastk[$this->stackPos-(2-2)] : array($this->yyastk[$this->stackPos-(2-2)]), $attributes); } protected function yyn114($attributes) { $this->yyval = null; } protected function yyn115($attributes) { $this->yyval = new Node\Stmt\Else_($this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn116($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)], false); } protected function yyn117($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(2-2)], true); } protected function yyn118($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)], false); } protected function yyn119($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn120($attributes) { $this->yyval = array(); } protected function yyn121($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn122($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn123($attributes) { $this->yyval = new Node\Param(substr($this->yyastk[$this->stackPos-(4-4)], 1), null, $this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-2)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn124($attributes) { $this->yyval = new Node\Param(substr($this->yyastk[$this->stackPos-(6-4)], 1), $this->yyastk[$this->stackPos-(6-6)], $this->yyastk[$this->stackPos-(6-1)], $this->yyastk[$this->stackPos-(6-2)], $this->yyastk[$this->stackPos-(6-3)], $attributes); } protected function yyn125($attributes) { $this->yyval = null; } protected function yyn126($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn127($attributes) { $this->yyval = 'array'; } protected function yyn128($attributes) { $this->yyval = 'callable'; } protected function yyn129($attributes) { $this->yyval = array(); } protected function yyn130($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn131($attributes) { $this->yyval = array(new Node\Arg($this->yyastk[$this->stackPos-(3-2)], false, $attributes)); } protected function yyn132($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn133($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn134($attributes) { $this->yyval = new Node\Arg($this->yyastk[$this->stackPos-(1-1)], false, $attributes); } protected function yyn135($attributes) { $this->yyval = new Node\Arg($this->yyastk[$this->stackPos-(2-2)], true, $attributes); } protected function yyn136($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn137($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn138($attributes) { $this->yyval = new Node\Expr\Variable(substr($this->yyastk[$this->stackPos-(1-1)], 1), $attributes); } protected function yyn139($attributes) { $this->yyval = new Node\Expr\Variable($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn140($attributes) { $this->yyval = new Node\Expr\Variable($this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn141($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn142($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn143($attributes) { $this->yyval = new Node\Stmt\StaticVar(substr($this->yyastk[$this->stackPos-(1-1)], 1), null, $attributes); } protected function yyn144($attributes) { $this->yyval = new Node\Stmt\StaticVar(substr($this->yyastk[$this->stackPos-(3-1)], 1), $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn145($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn146($attributes) { $this->yyval = array(); } protected function yyn147($attributes) { $this->yyval = new Node\Stmt\Property($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn148($attributes) { $this->yyval = new Node\Stmt\ClassConst($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn149($attributes) { $this->yyval = new Node\Stmt\ClassMethod($this->yyastk[$this->stackPos-(8-4)], array('type' => $this->yyastk[$this->stackPos-(8-1)], 'byRef' => $this->yyastk[$this->stackPos-(8-3)], 'params' => $this->yyastk[$this->stackPos-(8-6)], 'stmts' => $this->yyastk[$this->stackPos-(8-8)]), $attributes); } protected function yyn150($attributes) { $this->yyval = new Node\Stmt\TraitUse($this->yyastk[$this->stackPos-(3-2)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn151($attributes) { $this->yyval = array(); } protected function yyn152($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn153($attributes) { $this->yyval = array(); } protected function yyn154($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn155($attributes) { $this->yyval = new Node\Stmt\TraitUseAdaptation\Precedence($this->yyastk[$this->stackPos-(4-1)][0], $this->yyastk[$this->stackPos-(4-1)][1], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn156($attributes) { $this->yyval = new Node\Stmt\TraitUseAdaptation\Alias($this->yyastk[$this->stackPos-(5-1)][0], $this->yyastk[$this->stackPos-(5-1)][1], $this->yyastk[$this->stackPos-(5-3)], $this->yyastk[$this->stackPos-(5-4)], $attributes); } protected function yyn157($attributes) { $this->yyval = new Node\Stmt\TraitUseAdaptation\Alias($this->yyastk[$this->stackPos-(4-1)][0], $this->yyastk[$this->stackPos-(4-1)][1], $this->yyastk[$this->stackPos-(4-3)], null, $attributes); } protected function yyn158($attributes) { $this->yyval = new Node\Stmt\TraitUseAdaptation\Alias($this->yyastk[$this->stackPos-(4-1)][0], $this->yyastk[$this->stackPos-(4-1)][1], null, $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn159($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)]); } protected function yyn160($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn161($attributes) { $this->yyval = array(null, $this->yyastk[$this->stackPos-(1-1)]); } protected function yyn162($attributes) { $this->yyval = null; } protected function yyn163($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn164($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn165($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_PUBLIC; } protected function yyn166($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_PUBLIC; } protected function yyn167($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn168($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn169($attributes) { Node\Stmt\Class_::verifyModifier($this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)]); $this->yyval = $this->yyastk[$this->stackPos-(2-1)] | $this->yyastk[$this->stackPos-(2-2)]; } protected function yyn170($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_PUBLIC; } protected function yyn171($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_PROTECTED; } protected function yyn172($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_PRIVATE; } protected function yyn173($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_STATIC; } protected function yyn174($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_ABSTRACT; } protected function yyn175($attributes) { $this->yyval = Node\Stmt\Class_::MODIFIER_FINAL; } protected function yyn176($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn177($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn178($attributes) { $this->yyval = new Node\Stmt\PropertyProperty(substr($this->yyastk[$this->stackPos-(1-1)], 1), null, $attributes); } protected function yyn179($attributes) { $this->yyval = new Node\Stmt\PropertyProperty(substr($this->yyastk[$this->stackPos-(3-1)], 1), $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn180($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn181($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn182($attributes) { $this->yyval = array(); } protected function yyn183($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn184($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn185($attributes) { $this->yyval = new Node\Expr\Assign($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn186($attributes) { $this->yyval = new Node\Expr\Assign($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn187($attributes) { $this->yyval = new Node\Expr\AssignRef($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn188($attributes) { $this->yyval = new Node\Expr\AssignRef($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn189($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn190($attributes) { $this->yyval = new Node\Expr\Clone_($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn191($attributes) { $this->yyval = new Node\Expr\AssignOp\Plus($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn192($attributes) { $this->yyval = new Node\Expr\AssignOp\Minus($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn193($attributes) { $this->yyval = new Node\Expr\AssignOp\Mul($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn194($attributes) { $this->yyval = new Node\Expr\AssignOp\Div($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn195($attributes) { $this->yyval = new Node\Expr\AssignOp\Concat($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn196($attributes) { $this->yyval = new Node\Expr\AssignOp\Mod($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn197($attributes) { $this->yyval = new Node\Expr\AssignOp\BitwiseAnd($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn198($attributes) { $this->yyval = new Node\Expr\AssignOp\BitwiseOr($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn199($attributes) { $this->yyval = new Node\Expr\AssignOp\BitwiseXor($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn200($attributes) { $this->yyval = new Node\Expr\AssignOp\ShiftLeft($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn201($attributes) { $this->yyval = new Node\Expr\AssignOp\ShiftRight($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn202($attributes) { $this->yyval = new Node\Expr\PostInc($this->yyastk[$this->stackPos-(2-1)], $attributes); } protected function yyn203($attributes) { $this->yyval = new Node\Expr\PreInc($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn204($attributes) { $this->yyval = new Node\Expr\PostDec($this->yyastk[$this->stackPos-(2-1)], $attributes); } protected function yyn205($attributes) { $this->yyval = new Node\Expr\PreDec($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn206($attributes) { $this->yyval = new Node\Expr\BinaryOp\BooleanOr($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn207($attributes) { $this->yyval = new Node\Expr\BinaryOp\BooleanAnd($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn208($attributes) { $this->yyval = new Node\Expr\BinaryOp\LogicalOr($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn209($attributes) { $this->yyval = new Node\Expr\BinaryOp\LogicalAnd($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn210($attributes) { $this->yyval = new Node\Expr\BinaryOp\LogicalXor($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn211($attributes) { $this->yyval = new Node\Expr\BinaryOp\BitwiseOr($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn212($attributes) { $this->yyval = new Node\Expr\BinaryOp\BitwiseAnd($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn213($attributes) { $this->yyval = new Node\Expr\BinaryOp\BitwiseXor($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn214($attributes) { $this->yyval = new Node\Expr\BinaryOp\Concat($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn215($attributes) { $this->yyval = new Node\Expr\BinaryOp\Plus($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn216($attributes) { $this->yyval = new Node\Expr\BinaryOp\Minus($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn217($attributes) { $this->yyval = new Node\Expr\BinaryOp\Mul($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn218($attributes) { $this->yyval = new Node\Expr\BinaryOp\Div($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn219($attributes) { $this->yyval = new Node\Expr\BinaryOp\Mod($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn220($attributes) { $this->yyval = new Node\Expr\BinaryOp\ShiftLeft($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn221($attributes) { $this->yyval = new Node\Expr\BinaryOp\ShiftRight($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn222($attributes) { $this->yyval = new Node\Expr\UnaryPlus($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn223($attributes) { $this->yyval = new Node\Expr\UnaryMinus($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn224($attributes) { $this->yyval = new Node\Expr\BooleanNot($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn225($attributes) { $this->yyval = new Node\Expr\BitwiseNot($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn226($attributes) { $this->yyval = new Node\Expr\BinaryOp\Identical($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn227($attributes) { $this->yyval = new Node\Expr\BinaryOp\NotIdentical($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn228($attributes) { $this->yyval = new Node\Expr\BinaryOp\Equal($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn229($attributes) { $this->yyval = new Node\Expr\BinaryOp\NotEqual($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn230($attributes) { $this->yyval = new Node\Expr\BinaryOp\Smaller($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn231($attributes) { $this->yyval = new Node\Expr\BinaryOp\SmallerOrEqual($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn232($attributes) { $this->yyval = new Node\Expr\BinaryOp\Greater($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn233($attributes) { $this->yyval = new Node\Expr\BinaryOp\GreaterOrEqual($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn234($attributes) { $this->yyval = new Node\Expr\Instanceof_($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn235($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn236($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn237($attributes) { $this->yyval = new Node\Expr\Ternary($this->yyastk[$this->stackPos-(5-1)], $this->yyastk[$this->stackPos-(5-3)], $this->yyastk[$this->stackPos-(5-5)], $attributes); } protected function yyn238($attributes) { $this->yyval = new Node\Expr\Ternary($this->yyastk[$this->stackPos-(4-1)], null, $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn239($attributes) { $this->yyval = new Node\Expr\Isset_($this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn240($attributes) { $this->yyval = new Node\Expr\Empty_($this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn241($attributes) { $this->yyval = new Node\Expr\Include_($this->yyastk[$this->stackPos-(2-2)], Node\Expr\Include_::TYPE_INCLUDE, $attributes); } protected function yyn242($attributes) { $this->yyval = new Node\Expr\Include_($this->yyastk[$this->stackPos-(2-2)], Node\Expr\Include_::TYPE_INCLUDE_ONCE, $attributes); } protected function yyn243($attributes) { $this->yyval = new Node\Expr\Eval_($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn244($attributes) { $this->yyval = new Node\Expr\Include_($this->yyastk[$this->stackPos-(2-2)], Node\Expr\Include_::TYPE_REQUIRE, $attributes); } protected function yyn245($attributes) { $this->yyval = new Node\Expr\Include_($this->yyastk[$this->stackPos-(2-2)], Node\Expr\Include_::TYPE_REQUIRE_ONCE, $attributes); } protected function yyn246($attributes) { $this->yyval = new Node\Expr\Cast\Int($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn247($attributes) { $this->yyval = new Node\Expr\Cast\Double($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn248($attributes) { $this->yyval = new Node\Expr\Cast\String($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn249($attributes) { $this->yyval = new Node\Expr\Cast\Array_($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn250($attributes) { $this->yyval = new Node\Expr\Cast\Object($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn251($attributes) { $this->yyval = new Node\Expr\Cast\Bool($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn252($attributes) { $this->yyval = new Node\Expr\Cast\Unset_($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn253($attributes) { $this->yyval = new Node\Expr\Exit_($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn254($attributes) { $this->yyval = new Node\Expr\ErrorSuppress($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn255($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn256($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn257($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn258($attributes) { $this->yyval = new Node\Expr\ShellExec($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn259($attributes) { $this->yyval = new Node\Expr\Print_($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn260($attributes) { $this->yyval = new Node\Expr\Yield_(null, null, $attributes); } protected function yyn261($attributes) { $this->yyval = new Node\Expr\Closure(array('static' => false, 'byRef' => $this->yyastk[$this->stackPos-(9-2)], 'params' => $this->yyastk[$this->stackPos-(9-4)], 'uses' => $this->yyastk[$this->stackPos-(9-6)], 'stmts' => $this->yyastk[$this->stackPos-(9-8)]), $attributes); } protected function yyn262($attributes) { $this->yyval = new Node\Expr\Closure(array('static' => true, 'byRef' => $this->yyastk[$this->stackPos-(10-3)], 'params' => $this->yyastk[$this->stackPos-(10-5)], 'uses' => $this->yyastk[$this->stackPos-(10-7)], 'stmts' => $this->yyastk[$this->stackPos-(10-9)]), $attributes); } protected function yyn263($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn264($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn265($attributes) { $this->yyval = new Node\Expr\Yield_($this->yyastk[$this->stackPos-(2-2)], null, $attributes); } protected function yyn266($attributes) { $this->yyval = new Node\Expr\Yield_($this->yyastk[$this->stackPos-(4-4)], $this->yyastk[$this->stackPos-(4-2)], $attributes); } protected function yyn267($attributes) { $this->yyval = new Node\Expr\Array_($this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn268($attributes) { $this->yyval = new Node\Expr\Array_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn269($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn270($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch(new Node\Scalar\String(Node\Scalar\String::parse($this->yyastk[$this->stackPos-(4-1)]), $attributes), $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn271($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn272($attributes) { $this->yyval = new Node\Expr\New_($this->yyastk[$this->stackPos-(3-2)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn273($attributes) { $this->yyval = array(); } protected function yyn274($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(4-3)]; } protected function yyn275($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn276($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn277($attributes) { $this->yyval = new Node\Expr\ClosureUse(substr($this->yyastk[$this->stackPos-(2-2)], 1), $this->yyastk[$this->stackPos-(2-1)], $attributes); } protected function yyn278($attributes) { $this->yyval = new Node\Expr\FuncCall($this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn279($attributes) { $this->yyval = new Node\Expr\StaticCall($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn280($attributes) { $this->yyval = new Node\Expr\StaticCall($this->yyastk[$this->stackPos-(6-1)], $this->yyastk[$this->stackPos-(6-4)], $this->yyastk[$this->stackPos-(6-6)], $attributes); } protected function yyn281($attributes) { if ($this->yyastk[$this->stackPos-(2-1)] instanceof Node\Expr\StaticPropertyFetch) { $this->yyval = new Node\Expr\StaticCall($this->yyastk[$this->stackPos-(2-1)]->class, new Node\Expr\Variable($this->yyastk[$this->stackPos-(2-1)]->name, $attributes), $this->yyastk[$this->stackPos-(2-2)], $attributes); } elseif ($this->yyastk[$this->stackPos-(2-1)] instanceof Node\Expr\ArrayDimFetch) { $tmp = $this->yyastk[$this->stackPos-(2-1)]; while ($tmp->var instanceof Node\Expr\ArrayDimFetch) { $tmp = $tmp->var; } $this->yyval = new Node\Expr\StaticCall($tmp->var->class, $this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)], $attributes); $tmp->var = new Node\Expr\Variable($tmp->var->name, $attributes); } else { throw new \Exception; } } protected function yyn282($attributes) { $this->yyval = new Node\Expr\FuncCall($this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn283($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn284($attributes) { $this->yyval = new Node\Name('static', $attributes); } protected function yyn285($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn286($attributes) { $this->yyval = new Node\Name($this->yyastk[$this->stackPos-(1-1)], $attributes); } protected function yyn287($attributes) { $this->yyval = new Node\Name\FullyQualified($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn288($attributes) { $this->yyval = new Node\Name\Relative($this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn289($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn290($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn291($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn292($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn293($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn294($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn295() { $this->yyval = $this->yyastk[$this->stackPos]; } protected function yyn296($attributes) { $this->yyval = new Node\Expr\PropertyFetch($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn297($attributes) { $this->yyval = new Node\Expr\PropertyFetch($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn298($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn299($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn300($attributes) { $this->yyval = null; } protected function yyn301($attributes) { $this->yyval = null; } protected function yyn302($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn303($attributes) { $this->yyval = array(); } protected function yyn304($attributes) { $this->yyval = array(Node\Scalar\String::parseEscapeSequences($this->yyastk[$this->stackPos-(1-1)], '`')); } protected function yyn305($attributes) { foreach ($this->yyastk[$this->stackPos-(1-1)] as &$s) { if (is_string($s)) { $s = Node\Scalar\String::parseEscapeSequences($s, '`'); } }; $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn306($attributes) { $this->yyval = array(); } protected function yyn307($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn308($attributes) { $this->yyval = new Node\Scalar\LNumber(Node\Scalar\LNumber::parse($this->yyastk[$this->stackPos-(1-1)]), $attributes); } protected function yyn309($attributes) { $this->yyval = new Node\Scalar\DNumber(Node\Scalar\DNumber::parse($this->yyastk[$this->stackPos-(1-1)]), $attributes); } protected function yyn310($attributes) { $this->yyval = new Node\Scalar\String(Node\Scalar\String::parse($this->yyastk[$this->stackPos-(1-1)]), $attributes); } protected function yyn311($attributes) { $this->yyval = new Node\Scalar\MagicConst\Line($attributes); } protected function yyn312($attributes) { $this->yyval = new Node\Scalar\MagicConst\File($attributes); } protected function yyn313($attributes) { $this->yyval = new Node\Scalar\MagicConst\Dir($attributes); } protected function yyn314($attributes) { $this->yyval = new Node\Scalar\MagicConst\Class_($attributes); } protected function yyn315($attributes) { $this->yyval = new Node\Scalar\MagicConst\Trait_($attributes); } protected function yyn316($attributes) { $this->yyval = new Node\Scalar\MagicConst\Method($attributes); } protected function yyn317($attributes) { $this->yyval = new Node\Scalar\MagicConst\Function_($attributes); } protected function yyn318($attributes) { $this->yyval = new Node\Scalar\MagicConst\Namespace_($attributes); } protected function yyn319($attributes) { $this->yyval = new Node\Scalar\String(Node\Scalar\String::parseDocString($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-2)]), $attributes); } protected function yyn320($attributes) { $this->yyval = new Node\Scalar\String('', $attributes); } protected function yyn321($attributes) { $this->yyval = new Node\Expr\ConstFetch($this->yyastk[$this->stackPos-(1-1)], $attributes); } protected function yyn322($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn323($attributes) { $this->yyval = new Node\Expr\ClassConstFetch($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn324($attributes) { $this->yyval = new Node\Expr\UnaryPlus($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn325($attributes) { $this->yyval = new Node\Expr\UnaryMinus($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn326($attributes) { $this->yyval = new Node\Expr\Array_($this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn327($attributes) { $this->yyval = new Node\Expr\Array_($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn328($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn329($attributes) { $this->yyval = new Node\Expr\ClassConstFetch($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn330($attributes) { foreach ($this->yyastk[$this->stackPos-(3-2)] as &$s) { if (is_string($s)) { $s = Node\Scalar\String::parseEscapeSequences($s, '"'); } }; $this->yyval = new Node\Scalar\Encapsed($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn331($attributes) { foreach ($this->yyastk[$this->stackPos-(3-2)] as &$s) { if (is_string($s)) { $s = Node\Scalar\String::parseEscapeSequences($s, null); } } $s = preg_replace('~(\r\n|\n|\r)$~', '', $s); if ('' === $s) array_pop($this->yyastk[$this->stackPos-(3-2)]);; $this->yyval = new Node\Scalar\Encapsed($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn332($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn333($attributes) { $this->yyval = 'class'; } protected function yyn334($attributes) { $this->yyval = array(); } protected function yyn335($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn336() { $this->yyval = $this->yyastk[$this->stackPos]; } protected function yyn337() { $this->yyval = $this->yyastk[$this->stackPos]; } protected function yyn338($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn339($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn340($attributes) { $this->yyval = new Node\Expr\ArrayItem($this->yyastk[$this->stackPos-(3-3)], $this->yyastk[$this->stackPos-(3-1)], false, $attributes); } protected function yyn341($attributes) { $this->yyval = new Node\Expr\ArrayItem($this->yyastk[$this->stackPos-(1-1)], null, false, $attributes); } protected function yyn342($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn343($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn344($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn345($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn346($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(6-2)], $this->yyastk[$this->stackPos-(6-5)], $attributes); } protected function yyn347($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn348($attributes) { $this->yyval = new Node\Expr\PropertyFetch($this->yyastk[$this->stackPos-(3-1)], $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn349($attributes) { $this->yyval = new Node\Expr\MethodCall($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn350($attributes) { $this->yyval = new Node\Expr\FuncCall($this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn351($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn352($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn353($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn354($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn355($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn356($attributes) { $this->yyval = new Node\Expr\Variable($this->yyastk[$this->stackPos-(2-2)], $attributes); } protected function yyn357($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn358($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn359($attributes) { $this->yyval = new Node\Expr\StaticPropertyFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-4)], $attributes); } protected function yyn360($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn361($attributes) { $this->yyval = new Node\Expr\StaticPropertyFetch($this->yyastk[$this->stackPos-(3-1)], substr($this->yyastk[$this->stackPos-(3-3)], 1), $attributes); } protected function yyn362($attributes) { $this->yyval = new Node\Expr\StaticPropertyFetch($this->yyastk[$this->stackPos-(6-1)], $this->yyastk[$this->stackPos-(6-5)], $attributes); } protected function yyn363($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn364($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn365($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn366($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch($this->yyastk[$this->stackPos-(4-1)], $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn367($attributes) { $this->yyval = new Node\Expr\Variable(substr($this->yyastk[$this->stackPos-(1-1)], 1), $attributes); } protected function yyn368($attributes) { $this->yyval = new Node\Expr\Variable($this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn369($attributes) { $this->yyval = null; } protected function yyn370($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn371($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn372($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn373($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn374($attributes) { $this->yyval = new Node\Expr\List_($this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn375($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn376($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn377($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn378($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(1-1)]; } protected function yyn379($attributes) { $this->yyval = null; } protected function yyn380($attributes) { $this->yyval = array(); } protected function yyn381($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn382($attributes) { $this->yyastk[$this->stackPos-(3-1)][] = $this->yyastk[$this->stackPos-(3-3)]; $this->yyval = $this->yyastk[$this->stackPos-(3-1)]; } protected function yyn383($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn384($attributes) { $this->yyval = new Node\Expr\ArrayItem($this->yyastk[$this->stackPos-(3-3)], $this->yyastk[$this->stackPos-(3-1)], false, $attributes); } protected function yyn385($attributes) { $this->yyval = new Node\Expr\ArrayItem($this->yyastk[$this->stackPos-(1-1)], null, false, $attributes); } protected function yyn386($attributes) { $this->yyval = new Node\Expr\ArrayItem($this->yyastk[$this->stackPos-(4-4)], $this->yyastk[$this->stackPos-(4-1)], true, $attributes); } protected function yyn387($attributes) { $this->yyval = new Node\Expr\ArrayItem($this->yyastk[$this->stackPos-(2-2)], null, true, $attributes); } protected function yyn388($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn389($attributes) { $this->yyastk[$this->stackPos-(2-1)][] = $this->yyastk[$this->stackPos-(2-2)]; $this->yyval = $this->yyastk[$this->stackPos-(2-1)]; } protected function yyn390($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(1-1)]); } protected function yyn391($attributes) { $this->yyval = array($this->yyastk[$this->stackPos-(2-1)], $this->yyastk[$this->stackPos-(2-2)]); } protected function yyn392($attributes) { $this->yyval = new Node\Expr\Variable(substr($this->yyastk[$this->stackPos-(1-1)], 1), $attributes); } protected function yyn393($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch(new Node\Expr\Variable(substr($this->yyastk[$this->stackPos-(4-1)], 1), $attributes), $this->yyastk[$this->stackPos-(4-3)], $attributes); } protected function yyn394($attributes) { $this->yyval = new Node\Expr\PropertyFetch(new Node\Expr\Variable(substr($this->yyastk[$this->stackPos-(3-1)], 1), $attributes), $this->yyastk[$this->stackPos-(3-3)], $attributes); } protected function yyn395($attributes) { $this->yyval = new Node\Expr\Variable($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn396($attributes) { $this->yyval = new Node\Expr\Variable($this->yyastk[$this->stackPos-(3-2)], $attributes); } protected function yyn397($attributes) { $this->yyval = new Node\Expr\ArrayDimFetch(new Node\Expr\Variable($this->yyastk[$this->stackPos-(6-2)], $attributes), $this->yyastk[$this->stackPos-(6-4)], $attributes); } protected function yyn398($attributes) { $this->yyval = $this->yyastk[$this->stackPos-(3-2)]; } protected function yyn399($attributes) { $this->yyval = new Node\Scalar\String($this->yyastk[$this->stackPos-(1-1)], $attributes); } protected function yyn400($attributes) { $this->yyval = new Node\Scalar\String($this->yyastk[$this->stackPos-(1-1)], $attributes); } protected function yyn401($attributes) { $this->yyval = new Node\Expr\Variable(substr($this->yyastk[$this->stackPos-(1-1)], 1), $attributes); } }