1
0
mirror of https://github.com/danog/PHP-Parser.git synced 2025-01-22 13:51:12 +01:00
Nikita Popov 6bcc6c31dd Add useIdentifierNodes mode to parser
In this mode non-namespaced names that are currently represented
using strings will be represented using Identifier nodes instead.
Identifier nodes have a string $name subnode and coerce to string.

This allows preserving attributes and in particular location
information on identifiers.
2016-12-22 21:15:44 +01:00

3139 lines
155 KiB
PHP

<?php
namespace PhpParser\Parser;
use PhpParser\Error;
use PhpParser\Node;
use PhpParser\Node\Expr;
use PhpParser\Node\Name;
use PhpParser\Node\Scalar;
use PhpParser\Node\Stmt;
/* This is an automatically GENERATED file, which should not be manually edited.
* Instead edit one of the following:
* * the grammar files grammar/php5.y or grammar/php7.y
* * the skeleton file grammar/parser.template
* * the preprocessing script grammar/rebuildParsers.php
*/
class Php5 extends \PhpParser\ParserAbstract
{
protected $tokenToSymbolMapSize = 392;
protected $actionTableSize = 1007;
protected $gotoTableSize = 637;
protected $invalidSymbol = 157;
protected $errorSymbol = 1;
protected $defaultAction = -32766;
protected $unexpectedTokenRule = 32767;
protected $YY2TBLSTATE = 405;
protected $YYNLSTATES = 668;
protected $symbolToName = array(
"EOF",
"error",
"T_INCLUDE",
"T_INCLUDE_ONCE",
"T_EVAL",
"T_REQUIRE",
"T_REQUIRE_ONCE",
"','",
"T_LOGICAL_OR",
"T_LOGICAL_XOR",
"T_LOGICAL_AND",
"T_PRINT",
"T_YIELD",
"T_DOUBLE_ARROW",
"T_YIELD_FROM",
"'='",
"T_PLUS_EQUAL",
"T_MINUS_EQUAL",
"T_MUL_EQUAL",
"T_DIV_EQUAL",
"T_CONCAT_EQUAL",
"T_MOD_EQUAL",
"T_AND_EQUAL",
"T_OR_EQUAL",
"T_XOR_EQUAL",
"T_SL_EQUAL",
"T_SR_EQUAL",
"T_POW_EQUAL",
"'?'",
"':'",
"T_COALESCE",
"T_BOOLEAN_OR",
"T_BOOLEAN_AND",
"'|'",
"'^'",
"'&'",
"T_IS_EQUAL",
"T_IS_NOT_EQUAL",
"T_IS_IDENTICAL",
"T_IS_NOT_IDENTICAL",
"T_SPACESHIP",
"'<'",
"T_IS_SMALLER_OR_EQUAL",
"'>'",
"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_POW",
"'['",
"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_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",
"';'",
"'{'",
"'}'",
"'('",
"')'",
"'$'",
"'`'",
"']'",
"'\"'"
);
protected $tokenToSymbol = array(
0, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 53, 156, 157, 153, 52, 35, 157,
151, 152, 50, 47, 7, 48, 49, 51, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 29, 148,
41, 15, 43, 28, 65, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 67, 157, 155, 34, 157, 154, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 149, 33, 150, 55, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
157, 157, 157, 157, 157, 157, 1, 2, 3, 4,
5, 6, 8, 9, 10, 11, 12, 13, 14, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 30, 31, 32, 36, 37, 38, 39, 40, 42,
44, 45, 46, 54, 56, 57, 58, 59, 60, 61,
62, 63, 64, 66, 68, 69, 70, 71, 72, 73,
74, 75, 76, 77, 78, 79, 80, 81, 157, 157,
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, 133, 134, 135, 136, 137, 157, 157, 157, 157,
157, 157, 138, 139, 140, 141, 142, 143, 144, 145,
146, 147
);
protected $action = array(
673, 674, 675, 676, 677,-32766, 678, 679, 680, 716,
717, 216, 217, 218, 219, 220, 221, 222, 223, 224,
421, 225, 226, 227, 228, 229, 230, 231, 232, 233,
234, 235, 236,-32766,-32766,-32766,-32766,-32766,-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, 911, 335, 748,-32766,-32766,-32766,-32766,
-32766, 419, 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, 27, 718, 724, 725,
732, 733, 735, 734, 736, 737, 52, 53, 422, 54,
55, 728, 739, 738, 282, 56, 57, 284, 58,-32766,
-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, 7,-32767,
-32767,-32767,-32767, 50, 329, 1056, 521, 947, 948, 949,
946, 945, 944, 939, 1215, 204, 1217, 1216, 765, 766,
823, 59, 60,-32766,-32766,-32766, 921, 61, 1174, 62,
291, 292, 63, 64, 65, 66, 67, 68, 69, 70,
357, 24, 299, 71, 415,-32766,-32766,-32766, 1187, 1089,
1090, 751, 750, 1180, 213, 214, 215, 470,-32766,-32766,
-32766, 824, 409, 1101, 309,-32766, 18,-32766,-32766,-32766,
-32766,-32766,-32766, 1038, 200, -270, 434, 1038,-32766, 23,
-32766,-32766,-32766,-32766,-32766, 120, 494, 947, 948, 949,
946, 945, 944, 121, 478, 479, 283, 624, 125,-32766,
895, 896, 339, 480, 481,-32766, 1095, 1096, 1097, 1098,
1092, 1093, 307, 495,-32766, 447, 430, 495, 1099, 1094,
430, 414, -221, 871, 750, 39, 280, 332, 321, 1188,
322, 423, -123, -123, -123, -4, 824, 469, 99, 100,
101, 813, 301, 377, 38, 19, 424, -123, 471, -123,
472, -123, 473, -123, 102, 425, -123, -123, -123, 28,
29, 426, 427, 625, 30, 474, 430, 814, 72, 348,
925, 349, 350, 475, 476,-32766,-32766,-32766, 298, 477,
1038, 810, 795, 842, 428, 429,-32767,-32767,-32767,-32767,
94, 95, 96, 97, 98,-32766, 126,-32766,-32766,-32766,
-32766, 1139, 213, 214, 215, 295, 423, 239, 826, 639,
-123, 1038, 469, 895, 896, 1207, 813, 1038, 1206, 38,
19, 424, 200, 471, 902, 472, 495, 473, 127, 430,
425, 213, 214, 215, 28, 29, 426, 427, 407, 30,
474, 1038, 872, 72, 320, 824, 349, 350, 475, 476,
1038, 200, 214, 215, 477, 418, 811, 757, 842, 428,
429, 213, 214, 215, 295, -217, 76, 77, 78, 46,
338, 200, 480, 654, 326, 444, 31, 294, 331, 466,
297, 200, 241, 826, 639, -4, 32, 306, 79, 80,
81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
101, 1212, 301, 34, 824, 423, 807, 124,-32766,-32766,
-32766, 469, 901, 129, 102, 813, 1174, 577, 38, 19,
424, 448, 471, 1180, 472, 119, 473, 49,-32766, 425,
-32766,-32766, 642, 28, 29, 426, 824, 803, 30, 474,
416, 116, 72, 805, 47, 349, 350,-32766,-32766,-32766,
-32766,-32766,-32766, 477, 200, 1038, 234, 235, 236, 213,
214, 215,-32766,-32766, 643, 1140, 124,-32766,-32766,-32766,
-32766,-32766, 237, 238, 423, 231, 232, 233, 293, 200,
469, 586, 826, 639, 813, 445, 764, 38, 19, 424,
339, 471, 313, 472, 751, 473, 1180, 332, 425, 96,
97, 98, 28, 29, 426, 824, 423, 30, 474, 118,
920, 72, 469, 215, 349, 350, 813, 242, 1038, 38,
19, 424, 477, 471, 207, 472, 117, 473, 1038, 1066,
425, 200, 835, 645, 28, 29, 426, 824, 1101, 30,
474, 296, 244, 72, 206, 123, 349, 350,-32766,-32766,
495, 826, 639, 430, 477, 205,-32766,-32766,-32766, 440,
495, 115, 641, 430, 243, 648, 237, 238, 435,-32766,
332, 460, 592, 455, 20, 423,-32766, 130, 358, 765,
766, 469, 647, 826, 639, 813, 936, 657, 38, 19,
424, 651, 471, 128, 472, -82, 473, 600, 601, 425,
822, 924, 667, 28, 29, 426, 824, 423, 30, 474,
758, 644, 72, 469, 301, 349, 350, 813, 102, 299,
38, 19, 424, 477, 471, 51, 472, 750, 473, 606,
43, 425, 42, 752, 41, 28, 29, 426, 751, 44,
30, 474, 45, 48, 72, 443, 633, 349, 350, 519,
527,-32766, 858, 639, 597, 477, 623, 33, 103, 104,
105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
603, 612, 1059, 580, 620, 610, 423, 583, -80, 12,
464, 446, 469, 279, 826, 639, 813, 372, 440, 38,
19, 424, 596, 471, 837, 472, 240, 473, 977, 979,
425, 438, 843, 844, 28, 29, 426, 330, 1036, 30,
474, 0, 1146, 72, 208, 209, 349, 350, 308, 0,
210, 327, 211, 480, 477, 328, 334, 1100, -417, 310,
-498, -499, 0, 0, 202, 0, 0, 0, 0, 208,
209, 0, 1089, 1090, 0, 210,-32766, 211, -407, 11,
1091, 9, 4, 826, 639, 3, -399, 370, -408, 202,
856, 838, 0, 384, 385, 529, 411, 1089, 1090, 393,
-498,-32766, 410, 859, 767, 1091, 821, 815, 763, 662,
661, 37, 36, 854, 874, 865, 866, 762, 761, 809,
0, 798, 930, 929, 928, 931, 800, 566, 804, 1095,
1096, 1097, 1098, 1092, 1093, 383, 806, 808, 932, 812,
820, 1099, 1094, 640, 650, 652, 0, 653, 212, 655,
-32766, 656, 566, 659, 1095, 1096, 1097, 1098, 1092, 1093,
383, 664, 665, 666, 406, 405, 1099, 1094, 325, 324,
122, 0, 75, 212, 770,-32766, 864, 769, 663, 796,
459, 1211, 1181, 1179, 1165, 1177, 1080, 913, 1185, 1175,
863, 1052, 839, 840, 841, 937, 829, 1041, 768, 1040,
831, 1213, 759, 760, 1214, 0, 35, 26, 413, 408,
336, 305, 40, 73, 304, 25, 22, 303, 302, 290,
289, 281, 203,-32766, 74, 0, 1017, 570, 1018, 1042,
-218, 1082, -217, 1105, 903, 1046, 1043, 630, 560, 467,
463, 462, 456, 378, 16, 15, 14, 0, 0, 0,
604, 1160, 1159, 1106, 1209, 1079, 1176, 1047, 1164, 1178,
1065, 1050, 1051, 1048, 1049, 0, 1145
);
protected $actionCheck = array(
2, 3, 4, 5, 6, 8, 8, 9, 10, 11,
12, 31, 32, 33, 34, 35, 36, 37, 38, 39,
7, 41, 42, 43, 44, 45, 46, 47, 48, 49,
50, 51, 52, 8, 9, 10, 31, 32, 33, 34,
35, 36, 37, 38, 39, 7, 66, 67, 31, 32,
33, 34, 54, 28, 0, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 68, 69, 70, 71,
72, 73, 74, 79, 7, 77, 31, 32, 33, 34,
35, 7, 84, 85, 86, 87, 88, 89, 90, 91,
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, 7, 129, 130, 131,
132, 133, 134, 135, 136, 137, 2, 3, 4, 5,
6, 143, 144, 145, 7, 11, 12, 153, 14, 31,
32, 33, 34, 35, 36, 37, 38, 39, 103, 41,
42, 43, 44, 67, 109, 152, 82, 112, 113, 114,
115, 116, 117, 118, 77, 7, 79, 80, 102, 103,
1, 47, 48, 8, 9, 10, 148, 53, 79, 55,
56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
7, 67, 68, 69, 70, 8, 9, 10, 1, 75,
76, 77, 77, 79, 8, 9, 10, 83, 8, 9,
10, 1, 146, 139, 128, 28, 152, 30, 31, 32,
33, 34, 35, 12, 28, 79, 102, 12, 28, 7,
30, 31, 32, 33, 34, 149, 112, 112, 113, 114,
115, 116, 117, 7, 120, 121, 35, 77, 149, 103,
130, 131, 153, 129, 130, 109, 132, 133, 134, 135,
136, 137, 138, 143, 118, 7, 146, 143, 144, 145,
146, 7, 152, 29, 77, 151, 13, 153, 154, 152,
156, 71, 72, 73, 74, 0, 1, 77, 50, 51,
52, 81, 54, 78, 84, 85, 86, 87, 88, 89,
90, 91, 92, 93, 66, 95, 96, 97, 98, 99,
100, 101, 102, 143, 104, 105, 146, 148, 108, 7,
150, 111, 112, 113, 114, 8, 9, 10, 35, 119,
12, 148, 122, 123, 124, 125, 41, 42, 43, 44,
45, 46, 47, 48, 49, 28, 149, 30, 31, 32,
33, 155, 8, 9, 10, 35, 71, 13, 148, 149,
150, 12, 77, 130, 131, 79, 81, 12, 82, 84,
85, 86, 28, 88, 152, 90, 143, 92, 67, 146,
95, 8, 9, 10, 99, 100, 101, 102, 103, 104,
105, 12, 148, 108, 109, 1, 111, 112, 113, 114,
12, 28, 9, 10, 119, 7, 148, 122, 123, 124,
125, 8, 9, 10, 35, 152, 8, 9, 10, 67,
67, 28, 129, 29, 7, 29, 140, 141, 143, 7,
7, 28, 29, 148, 149, 150, 28, 7, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 150, 54, 13, 1, 71, 148, 147, 8, 9,
10, 77, 152, 149, 66, 81, 79, 153, 84, 85,
86, 128, 88, 79, 90, 13, 92, 67, 28, 95,
30, 31, 29, 99, 100, 101, 1, 148, 104, 105,
123, 149, 108, 148, 67, 111, 112, 8, 9, 10,
31, 32, 33, 119, 28, 12, 50, 51, 52, 8,
9, 10, 8, 9, 29, 152, 147, 28, 151, 30,
31, 32, 66, 67, 71, 47, 48, 49, 35, 28,
77, 82, 148, 149, 81, 149, 148, 84, 85, 86,
153, 88, 29, 90, 77, 92, 79, 153, 95, 47,
48, 49, 99, 100, 101, 1, 71, 104, 105, 149,
148, 108, 77, 10, 111, 112, 81, 15, 12, 84,
85, 86, 119, 88, 15, 90, 149, 92, 12, 112,
95, 28, 35, 29, 99, 100, 101, 1, 139, 104,
105, 35, 15, 108, 15, 29, 111, 112, 31, 32,
143, 148, 149, 146, 119, 15, 8, 9, 10, 146,
143, 15, 149, 146, 15, 29, 66, 67, 151, 31,
153, 72, 73, 72, 73, 71, 28, 97, 98, 102,
103, 77, 29, 148, 149, 81, 148, 149, 84, 85,
86, 29, 88, 29, 90, 29, 92, 106, 107, 95,
29, 148, 149, 99, 100, 101, 1, 71, 104, 105,
148, 149, 108, 77, 54, 111, 112, 81, 66, 68,
84, 85, 86, 119, 88, 67, 90, 77, 92, 74,
67, 95, 67, 77, 67, 99, 100, 101, 77, 67,
104, 105, 67, 67, 108, 86, 89, 111, 112, 79,
82, 82, 148, 149, 109, 119, 79, 15, 16, 17,
18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
79, 79, 79, 87, 91, 93, 71, 96, 94, 94,
102, 94, 77, 94, 148, 149, 81, 146, 146, 84,
85, 86, 96, 88, 147, 90, 29, 92, 56, 57,
95, 102, 123, 123, 99, 100, 101, 110, 154, 104,
105, -1, 139, 108, 47, 48, 111, 112, 128, -1,
53, 126, 55, 129, 119, 127, 126, 139, 154, 128,
128, 128, -1, -1, 67, -1, -1, -1, -1, 47,
48, -1, 75, 76, -1, 53, 79, 55, 142, 142,
83, 142, 142, 148, 149, 142, 142, 142, 142, 67,
148, 150, -1, 146, 146, 146, 146, 75, 76, 146,
128, 79, 146, 148, 150, 83, 148, 148, 148, 148,
148, 148, 148, 148, 148, 148, 148, 148, 148, 148,
-1, 148, 148, 148, 148, 148, 148, 130, 148, 132,
133, 134, 135, 136, 137, 138, 148, 148, 148, 148,
148, 144, 145, 149, 149, 149, -1, 149, 151, 149,
153, 149, 130, 149, 132, 133, 134, 135, 136, 137,
138, 149, 149, 149, 149, 149, 144, 145, 149, 149,
149, -1, 149, 151, 150, 153, 150, 150, 150, 150,
150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
150, 150, 150, 150, 150, -1, 151, 151, 151, 151,
151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
151, 151, 151, 151, 151, -1, 152, 152, 152, 152,
152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
152, 152, 152, 152, 152, 152, 152, -1, -1, -1,
155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
155, 155, 155, 155, 155, -1, 156
);
protected $actionBase = array(
0, 220, 295, 109, 109, 180, 714, -2, -2, -2,
-2, -2, 135, 505, 606, 404, 606, 473, 574, 675,
675, 675, 330, 389, 513, 513, 819, 513, 359, 365,
328, 225, 586, 221, 576, 398, 398, 398, 398, 134,
134, 398, 398, 398, 398, 398, 398, 398, 398, 398,
398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
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, 720, 728, 729, 732, 817,
659, 816, 771, 772, 634, 773, 774, 775, 776, 777,
770, 778, 835, 779, 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,
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 403, 618, 618, 618, 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,
762, 762, 762, 762, 762, 762, 762, 762, 762, 762,
762, 762, 762, 762, 762, 470, -20, -20, 509, 608,
327, 587, 210, 489, 197, 25, 25, 25, 25, 25,
17, 45, 5, 5, 5, 5, 712, 305, 305, 305,
305, 118, 118, 118, 118, 784, 783, 782, 781, 303,
303, 664, 664, 621, 761, 522, 522, 498, 498, 487,
487, 487, 487, 487, 487, 487, 487, 487, 487, 387,
156, 812, 130, 130, 130, 130, 243, 84, 207, 207,
207, 643, 850, 243, 248, 248, 248, 476, 476, 476,
76, 638, 296, 296, 547, 547, 547, 477, 477, 477,
477, 483, 763, 639, 477, 477, 477, 447, 97, 334,
651, 780, 666, 766, 523, 686, 96, 696, 690, -6,
669, 571, 569, 561, 684, 406, 807, -6, 254, 508,
430, 630, 731, 408, 710, 193, 268, 363, 532, 362,
407, 74, 760, 709, 815, 814, 137, 321, 673, 630,
630, 630, 232, 469, 759, 756, 362, 273, 570, 570,
570, 570, 767, 755, 570, 570, 570, 570, 764, 694,
38, 432, 788, 13, 716, 631, 631, 620, 620, 631,
631, 631, 631, 567, 631, 796, 805, 805, 620, 620,
661, 567, 801, 801, 801, 801, 620, 567, 620, 620,
631, 620, 805, 805, 567, 621, 805, 119, 567, 665,
631, 670, 670, 801, 702, 701, 620, 640, 620, 668,
805, 805, 805, 668, 567, 801, 615, 617, 168, 805,
801, 533, 533, 615, 567, 533, 661, 533, 54, 636,
637, 795, 802, 798, 734, 649, 650, 809, 808, 813,
810, 804, 641, 689, 700, 711, 616, 635, 633, 642,
645, 683, 646, 660, 669, 612, 622, 622, 622, 672,
680, 672, 622, 622, 622, 622, 622, 622, 622, 622,
842, 685, 676, 671, 629, 698, 610, 611, 657, 599,
744, 658, 689, 689, 769, 824, 831, 644, 624, 626,
807, 826, 672, 849, 704, 246, 579, 806, 768, 687,
688, 672, 803, 672, 752, 672, 823, 794, 689, 793,
622, 822, 848, 847, 846, 845, 844, 843, 836, 841,
628, 840, 718, 656, 830, 440, 811, 684, 679, 693,
699, 67, 839, 792, 672, 672, 753, 763, 672, 754,
706, 703, 834, 707, 829, 838, 658, 828, 672, 648,
837, 67, 623, 625, 818, 652, 708, 797, 662, 821,
799, 735, 572, 619, 791, 632, 713, 833, 832, 820,
695, 736, 597, 738, 653, 663, 647, 790, 740, 800,
682, 789, 681, 825, 654, 612, 677, 667, 655, 627,
742, 787, 827, 705, 730, 717, 786, 715, 785, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 134,
134, -2, -2, -2, -2, 0, 0, 0, 0, 0,
-2, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 0, 0, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 418,
418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
418, 418, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 418, -20, -20, -20, -20, 418, -20,
-20, -20, -20, -20, -20, -20, 418, 418, 418, 418,
418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
418, 418, 418, -20, 418, 418, 418, -20, 487, -20,
487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
487, 487, 487, 418, 0, 0, 418, -20, 418, -20,
418, -20, 418, 418, 418, 418, 418, 418, -20, -20,
-20, -20, -20, -20, 0, 248, 248, 248, 248, -20,
-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, 805, 0, 414, 550, 550,
550, 550, 67, 362, 0, 631, 631, 0, 640, 0,
0, 0, 805, 0, 620, 0, 0, 0, 0, 622,
246, 0, 322, 0, 0, 0, 0, 0, 0, 0,
626, 322, 433, 433, 0, 0, 628, 622, 622, 622,
0, 0, 626, 626, 0, 0, 0, 0, 0, 0,
427, 626, 0, 0, 0, 0, 427, 274, 0, 0,
274, 0, 67
);
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, 526, 526,32767, 482,32767,32767,
32767,32767,32767,32767,32767, 288, 288, 288,32767,32767,
32767, 514, 514, 514, 514, 514, 514, 514, 514, 514,
514, 514,32767,32767,32767,32767,32767, 370,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,32767,32767,32767,
32767,32767,32767, 376, 531,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767, 351, 352, 354, 355, 287, 515,
238, 377, 530, 286, 240, 315, 486,32767,32767,32767,
317, 117, 249, 194, 485, 120, 285, 225, 369, 371,
316, 292, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 291, 442, 348, 347, 346, 444,
32767, 443, 479, 479, 482,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, 313, 470, 469, 314, 440,
318, 441, 320, 445, 319, 336, 337, 334, 335, 338,
447, 446, 463, 464, 461, 462, 290, 339, 340, 341,
342, 465, 466, 467, 468, 272, 272, 272, 272,32767,
32767, 525, 525,32767,32767, 327, 328, 454, 455,32767,
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
273,32767, 229, 229, 229, 229, 229,32767,32767,32767,
32767,32767,32767,32767, 322, 323, 321, 449, 450, 448,
32767, 416,32767, 418,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767, 487,32767,32767,
32767,32767,32767,32767,32767, 500, 405,32767,32767,32767,
398, 213, 215, 162, 473,32767,32767,32767,32767,32767,
505, 332,32767,32767,32767,32767,32767, 540,32767, 500,
32767,32767,32767,32767,32767,32767,32767,32767, 345, 324,
325, 326,32767,32767,32767,32767, 504, 498, 457, 458,
459, 460,32767,32767, 451, 452, 453, 456,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767, 166,32767, 413, 419, 419,32767,32767,
32767, 166,32767,32767,32767,32767,32767, 166,32767,32767,
32767,32767, 503, 502, 166,32767, 399, 481, 166, 179,
32767, 177, 177,32767, 199, 199,32767,32767,32767, 181,
474, 493,32767, 181, 166,32767, 387, 168, 481,32767,
32767, 231, 231, 387, 166, 231,32767, 231,32767, 83,
423,32767,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767, 400,32767,32767,32767, 366, 367, 476,
489,32767, 490,32767, 398,32767, 330, 331, 333, 310,
32767, 312, 356, 357, 358, 359, 360, 361, 362, 364,
32767,32767, 403, 406,32767,32767,32767, 85, 109, 248,
32767, 538, 85, 401,32767,32767, 295, 538,32767,32767,
32767,32767, 533,32767,32767, 289,32767,32767,32767, 85,
85, 244,32767, 164,32767, 523,32767, 498, 402,32767,
329,32767,32767,32767,32767,32767,32767,32767,32767,32767,
499,32767,32767,32767,32767, 220,32767, 436,32767, 85,
32767, 180,32767,32767, 293, 239,32767,32767, 532,32767,
32767,32767,32767,32767,32767,32767,32767,32767, 165,32767,
32767, 182,32767,32767, 498,32767,32767,32767,32767,32767,
32767,32767,32767, 284,32767,32767,32767,32767,32767, 498,
32767,32767, 224,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767, 83, 60,32767, 266,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767,32767, 122,
122, 3, 122, 122, 3, 122, 122, 122, 122, 122,
122, 122, 122, 122, 122, 122, 122, 122, 207, 251,
210, 199, 199, 159, 251, 251, 251, 258
);
protected $goto = array(
160, 160, 134, 134, 139, 134, 135, 136, 137, 142,
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, 496, 497, 361,
498, 502, 503, 504, 505, 506, 507, 508, 509, 964,
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,
550, 182, 183, 184, 185, 186, 187, 188, 189, 190,
191, 192, 193, 194, 145, 146, 147, 161, 148, 163,
149, 197, 164, 150, 151, 152, 198, 153, 131, 626,
568, 755, 568, 568, 568, 568, 568, 568, 568, 568,
568, 568, 568, 568, 568, 568, 568, 568, 568, 568,
568, 568, 568, 568, 568, 568, 568, 568, 568, 568,
568, 568, 568, 568, 568, 568, 568, 568, 568, 568,
568, 568, 568, 568, 568, 1102, 756, 1102, 1102, 1102,
1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102,
1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102,
1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102,
1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102,
635, 887, 887, 1192, 1192, 526, 1171, 168, 1171, 512,
786, 512, 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, 500, 500, 500, 500, 500, 500, 6, 584,
587, 632, 500, 500, 500, 500, 500, 500, 500, 500,
500, 500, 511, 634, 511, 387, 609, 545, 545, 574,
541, 581, 607, 792, 754, 543, 543, 499, 501, 532,
547, 575, 578, 588, 594, 873, 341, 853, 513, 658,
513, 514, 882, 877, 567, 817, 567, 567, 567, 567,
567, 567, 567, 567, 567, 567, 567, 567, 567, 567,
567, 567, 567, 567, 567, 567, 567, 567, 567, 567,
567, 567, 567, 567, 567, 567, 567, 567, 567, 567,
567, 567, 567, 567, 567, 567, 567, 567, 567, 552,
553, 554, 555, 556, 557, 558, 559, 561, 590, 1078,
1077, 551, 517, 1163, 857, 525, 522, 522, 522, 450,
452, 935, 637, 522, 905, 1103, 619, 933, 525, 525,
1060, 323, 312, 436, 436, 436, 436, 436, 436, 540,
522, 1196, 546, 436, 436, 436, 436, 436, 436, 436,
436, 436, 436, 1067, 599, 1067, 894, 894, 894, 894,
894, 362, 1151, 538, 779, 660, 563, 894, 595, 870,
884, 614, 869, 617, 880, 621, 622, 629, 631, 636,
638, 851, 851, 851, 851, 1170, 608, 1170, 846, 852,
616, 779, 779, 1189, 1186, 1186, 1186, 522, 522, 962,
375, 539, 569, 522, 522, 891, 522, 900, 1063, 1064,
613, 347, 1060, 618, 356, 359, 1011, 398, 1169, 1203,
1203, 530, 523, 775, 368, 542, 1061, 1162, 1061, 1083,
549, 1203, 548, 573, 373, 1062, 1021, 17, 13, 355,
909, 457, 369, 369, 369, 402, 1184, 1184, 1184, 772,
772, 10, 1053, 780, 780, 780, 782, 562, 771, 1202,
1202, 773, 342, 343, 783, 646, 369, 861, 1058, 21,
453, 1202, 914, 386, 605, 591, 344, 404, 276, 277,
278, 1205, 579, 465, 1148, 951, 0, 0, 0, 0,
0, 0, 0, 0, 537, 0, 943, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 516, 536, 0, 0, 0,
0, 531, 0, 0, 0, 0, 516, 536, 0, 0,
0, 0, 0, 0, 515, 0, 520, 439, 0, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 778, 0, 1210
);
protected $gotoCheck = array(
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 54,
113, 12, 113, 113, 113, 113, 113, 113, 113, 113,
113, 113, 113, 113, 113, 113, 113, 113, 113, 113,
113, 113, 113, 113, 113, 113, 113, 113, 113, 113,
113, 113, 113, 113, 113, 113, 113, 113, 113, 113,
113, 113, 113, 113, 113, 120, 13, 120, 120, 120,
120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
8, 71, 71, 71, 71, 94, 111, 24, 111, 113,
26, 113, 24, 24, 24, 24, 24, 24, 24, 24,
24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
24, 24, 110, 110, 110, 110, 110, 110, 91, 57,
57, 57, 110, 110, 110, 110, 110, 110, 110, 110,
110, 110, 110, 5, 110, 48, 48, 48, 48, 48,
48, 37, 37, 11, 11, 48, 48, 48, 48, 48,
48, 48, 48, 48, 48, 11, 66, 11, 116, 11,
116, 11, 11, 11, 54, 47, 54, 54, 54, 54,
54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
54, 54, 54, 54, 54, 54, 54, 54, 54, 103,
103, 103, 103, 103, 103, 103, 103, 103, 103, 118,
118, 41, 9, 76, 30, 41, 9, 9, 9, 7,
7, 7, 7, 9, 78, 7, 7, 7, 41, 41,
76, 119, 119, 54, 54, 54, 54, 54, 54, 9,
9, 133, 102, 54, 54, 54, 54, 54, 54, 54,
54, 54, 54, 54, 121, 54, 54, 54, 54, 54,
54, 44, 125, 29, 20, 29, 29, 54, 29, 29,
29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
29, 54, 54, 54, 54, 112, 46, 112, 54, 54,
54, 20, 20, 131, 112, 112, 112, 9, 9, 94,
45, 9, 9, 9, 9, 73, 9, 75, 76, 76,
58, 15, 76, 58, 55, 58, 95, 19, 112, 135,
135, 55, 9, 22, 10, 55, 76, 76, 76, 31,
2, 135, 9, 2, 14, 76, 31, 31, 31, 31,
79, 55, 117, 117, 117, 18, 8, 8, 8, 20,
20, 55, 106, 20, 20, 20, 20, 31, 20, 134,
134, 21, 66, 66, 23, 68, 117, 65, 108, 31,
60, 134, 80, 117, 31, 64, 64, 64, 62, 62,
62, 134, 61, 101, 124, 93, -1, -1, -1, -1,
-1, -1, -1, -1, 8, -1, 91, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -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, 94, -1, -1, -1, -1, 8, 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, -1, 8
);
protected $gotoBase = array(
0, 0, -161, 0, 0, 261, 0, 366, 188, 42,
143, 282, 109, 154, 137, 141, 0, 0, 89, 142,
94, 163, 147, 96, 7, 0, 202, 0, 0, -227,
346, 64, 0, 0, 0, 0, 0, 245, 0, 0,
-22, 339, 0, 0, 373, 160, 156, 289, -4, 0,
0, 0, 0, 0, 104, 37, 0, -44, -2, 0,
78, 79, -136, 0, 197, 98, -149, 0, 157, 0,
0, -78, 0, 149, 0, 144, 26, 0, 351, 133,
75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 246, 0, 69, 166, 165, 0, 0, 0, 0,
0, 70, 367, 307, 0, 0, 85, 0, 97, 0,
-27, -93, 136, -90, 0, 0, -1, 184, 50, 60,
-45, 201, 0, 0, 76, 208, 0, 0, 0, 0,
0, 161, 0, 364, 198, 158, 0, 0
);
protected $gotoDefault = array(
-32768, 468, 669, 2, 670, 741, 749, 602, 482, 483,
518, 855, 793, 794, 364, 412, 484, 363, 399, 392,
781, 774, 776, 784, 166, 400, 787, 1, 789, 524,
825, 1012, 351, 797, 352, 593, 799, 534, 801, 802,
132, 485, 365, 366, 535, 374, 582, 816, 266, 371,
818, 353, 819, 828, 354, 615, 598, 564, 611, 431,
449, 576, 275, 544, 571, 860, 340, 868, 649, 876,
879, 486, 565, 890, 454, 898, 1088, 382, 904, 910,
915, 918, 420, 401, 589, 922, 923, 5, 927, 627,
628, 942, 300, 950, 963, 417, 1031, 1033, 487, 488,
528, 461, 510, 533, 489, 1054, 442, 403, 1057, 490,
491, 432, 433, 1075, 1072, 346, 1156, 345, 451, 311,
1143, 585, 1107, 458, 1195, 1152, 337, 492, 493, 360,
376, 1190, 437, 1197, 1204, 333, 367, 572
);
protected $ruleToNonTerminal = array(
0, 1, 3, 3, 2, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 6, 6, 6, 6, 6, 6, 6,
7, 7, 8, 9, 9, 10, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 15, 15, 16,
16, 16, 16, 18, 18, 14, 14, 19, 19, 20,
20, 21, 21, 22, 22, 17, 17, 23, 25, 25,
26, 27, 27, 29, 28, 28, 28, 28, 30, 30,
30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
30, 30, 30, 30, 30, 30, 30, 11, 11, 51,
51, 53, 52, 52, 45, 45, 55, 55, 56, 56,
12, 13, 13, 13, 59, 59, 59, 60, 60, 63,
63, 61, 61, 64, 64, 38, 38, 47, 47, 50,
50, 50, 49, 49, 65, 39, 39, 39, 39, 66,
66, 67, 67, 68, 68, 36, 36, 32, 32, 69,
34, 34, 70, 33, 33, 35, 35, 46, 46, 46,
57, 57, 72, 72, 73, 73, 75, 75, 75, 74,
74, 58, 58, 76, 76, 76, 77, 77, 78, 78,
78, 42, 42, 79, 79, 79, 43, 43, 80, 80,
62, 62, 81, 81, 81, 81, 86, 86, 87, 87,
88, 88, 88, 88, 88, 89, 90, 90, 85, 85,
82, 82, 84, 84, 92, 92, 91, 91, 91, 91,
91, 91, 83, 83, 93, 93, 44, 44, 37, 37,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 31, 31, 41, 41, 98, 98,
99, 99, 99, 99, 105, 94, 94, 101, 101, 107,
107, 108, 109, 109, 109, 109, 109, 109, 113, 113,
54, 54, 54, 95, 95, 114, 114, 110, 110, 115,
115, 115, 115, 96, 96, 96, 100, 100, 100, 106,
106, 120, 120, 120, 120, 120, 120, 120, 120, 120,
120, 120, 120, 120, 24, 24, 24, 24, 24, 24,
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, 104, 104, 97, 97, 97, 97, 121,
121, 124, 124, 123, 123, 125, 125, 48, 48, 48,
48, 127, 127, 126, 126, 126, 126, 126, 128, 128,
112, 112, 116, 116, 111, 111, 129, 129, 129, 129,
117, 117, 117, 117, 103, 103, 118, 118, 118, 118,
71, 130, 130, 131, 131, 131, 102, 102, 132, 132,
133, 133, 133, 133, 119, 119, 119, 119, 135, 136,
134, 134, 134, 134, 134, 134, 134, 137, 137, 137
);
protected $ruleToLength = array(
1, 1, 2, 0, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 3, 1, 1, 1, 1, 1,
3, 5, 4, 3, 4, 2, 3, 1, 1, 7,
8, 6, 7, 3, 1, 3, 1, 3, 1, 1,
3, 1, 2, 1, 2, 3, 1, 3, 3, 1,
3, 2, 0, 1, 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, 6, 3, 3, 2, 2, 1, 1, 1, 0,
2, 8, 0, 4, 1, 3, 0, 1, 0, 1,
10, 7, 6, 5, 1, 2, 2, 0, 2, 0,
2, 0, 2, 1, 3, 1, 4, 1, 4, 1,
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, 1, 1, 1, 0,
1, 0, 2, 2, 3, 3, 1, 3, 1, 2,
2, 3, 1, 1, 2, 4, 3, 1, 1, 3,
2, 0, 3, 3, 9, 3, 1, 3, 0, 2,
4, 5, 4, 4, 4, 3, 1, 1, 1, 3,
1, 1, 0, 1, 1, 2, 1, 1, 1, 1,
1, 1, 1, 3, 1, 3, 3, 1, 0, 1,
1, 3, 3, 4, 4, 1, 2, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
2, 2, 2, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 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, 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() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule1() {
$this->semValue = $this->handleNamespaces($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule2() {
if (is_array($this->semStack[$this->stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); } else { $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; };
}
protected function reduceRule3() {
$this->semValue = array();
}
protected function reduceRule4() {
$startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop(['comments' => $startAttributes['comments']]); } else { $nop = null; };
if ($nop !== null) { $this->semStack[$this->stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule5() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule6() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule7() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule8() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule9() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule10() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule11() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule12() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule13() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule14() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule15() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule16() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule17() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule18() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule19() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule20() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule21() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule22() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule23() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule24() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule25() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule26() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule27() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule28() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule29() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule30() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule31() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule32() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule33() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule34() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule35() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule36() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule37() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule38() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule39() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule40() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule41() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule42() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule43() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule44() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule45() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule46() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule47() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule48() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule49() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule50() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule51() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule52() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule53() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule54() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule55() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule56() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule57() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule58() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule59() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule60() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule61() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule62() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule63() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule64() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule65() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule66() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule67() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule68() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule69() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule70() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule71() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule72() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule73() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule74() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule75() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule76() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule77() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule78() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule79() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule80() {
$this->semValue = ($this->useIdentifierNodes ? new Node\Identifier($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : $this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule81() {
$this->semValue = ($this->useIdentifierNodes ? new Node\Identifier($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : $this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule82() {
$this->semValue = ($this->useIdentifierNodes ? new Node\Identifier($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes) : $this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule83() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule84() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule85() {
$this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule86() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule87() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule88() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule89() {
$this->semValue = new Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule90() {
$this->semValue = new Stmt\Namespace_($this->semStack[$this->stackPos-(3-2)], null, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); $this->checkNamespace($this->semValue);
}
protected function reduceRule91() {
$this->semValue = new Stmt\Namespace_($this->semStack[$this->stackPos-(5-2)], $this->semStack[$this->stackPos-(5-4)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes); $this->checkNamespace($this->semValue);
}
protected function reduceRule92() {
$this->semValue = new Stmt\Namespace_(null, $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); $this->checkNamespace($this->semValue);
}
protected function reduceRule93() {
$this->semValue = new Stmt\Use_($this->semStack[$this->stackPos-(3-2)], Stmt\Use_::TYPE_NORMAL, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule94() {
$this->semValue = new Stmt\Use_($this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-2)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule95() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule96() {
$this->semValue = new Stmt\Const_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule97() {
$this->semValue = Stmt\Use_::TYPE_FUNCTION;
}
protected function reduceRule98() {
$this->semValue = Stmt\Use_::TYPE_CONSTANT;
}
protected function reduceRule99() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(7-3)], $this->startAttributeStack[$this->stackPos-(7-3)] + $this->endAttributeStack[$this->stackPos-(7-3)]), $this->semStack[$this->stackPos-(7-6)], $this->semStack[$this->stackPos-(7-2)], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
}
protected function reduceRule100() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(8-4)], $this->startAttributeStack[$this->stackPos-(8-4)] + $this->endAttributeStack[$this->stackPos-(8-4)]), $this->semStack[$this->stackPos-(8-7)], $this->semStack[$this->stackPos-(8-2)], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes);
}
protected function reduceRule101() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-2)] + $this->endAttributeStack[$this->stackPos-(6-2)]), $this->semStack[$this->stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
}
protected function reduceRule102() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(7-3)], $this->startAttributeStack[$this->stackPos-(7-3)] + $this->endAttributeStack[$this->stackPos-(7-3)]), $this->semStack[$this->stackPos-(7-6)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
}
protected function reduceRule103() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule104() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule105() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule106() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule107() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule108() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule109() {
$this->semValue = new Stmt\UseUse($this->semStack[$this->stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $this->stackPos-(1-1));
}
protected function reduceRule110() {
$this->semValue = new Stmt\UseUse($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); $this->checkUseUse($this->semValue, $this->stackPos-(3-3));
}
protected function reduceRule111() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule112() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule113() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)]; $this->semValue->type = Stmt\Use_::TYPE_NORMAL;
}
protected function reduceRule114() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)]; $this->semValue->type = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule115() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule116() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule117() {
$this->semValue = new Node\Const_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule118() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule119() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule120() {
$this->semValue = new Node\Const_($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule121() {
if (is_array($this->semStack[$this->stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); } else { $this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)]; };
}
protected function reduceRule122() {
$this->semValue = array();
}
protected function reduceRule123() {
$startAttributes = $this->lookaheadStartAttributes; if (isset($startAttributes['comments'])) { $nop = new Stmt\Nop(['comments' => $startAttributes['comments']]); } else { $nop = null; };
if ($nop !== null) { $this->semStack[$this->stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule124() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule125() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule126() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule127() {
throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule128() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)]; $attrs = $this->startAttributeStack[$this->stackPos-(3-1)]; $stmts = $this->semValue; if (!empty($attrs['comments']) && isset($stmts[0])) {$stmts[0]->setAttribute('comments', array_merge($attrs['comments'], $stmts[0]->getAttribute('comments', []))); };
}
protected function reduceRule129() {
$this->semValue = new Stmt\If_($this->semStack[$this->stackPos-(5-2)], ['stmts' => is_array($this->semStack[$this->stackPos-(5-3)]) ? $this->semStack[$this->stackPos-(5-3)] : array($this->semStack[$this->stackPos-(5-3)]), 'elseifs' => $this->semStack[$this->stackPos-(5-4)], 'else' => $this->semStack[$this->stackPos-(5-5)]], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule130() {
$this->semValue = new Stmt\If_($this->semStack[$this->stackPos-(8-2)], ['stmts' => $this->semStack[$this->stackPos-(8-4)], 'elseifs' => $this->semStack[$this->stackPos-(8-5)], 'else' => $this->semStack[$this->stackPos-(8-6)]], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes);
}
protected function reduceRule131() {
$this->semValue = new Stmt\While_($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule132() {
$this->semValue = new Stmt\Do_($this->semStack[$this->stackPos-(5-4)], is_array($this->semStack[$this->stackPos-(5-2)]) ? $this->semStack[$this->stackPos-(5-2)] : array($this->semStack[$this->stackPos-(5-2)]), $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule133() {
$this->semValue = new Stmt\For_(['init' => $this->semStack[$this->stackPos-(9-3)], 'cond' => $this->semStack[$this->stackPos-(9-5)], 'loop' => $this->semStack[$this->stackPos-(9-7)], 'stmts' => $this->semStack[$this->stackPos-(9-9)]], $this->startAttributeStack[$this->stackPos-(9-1)] + $this->endAttributes);
}
protected function reduceRule134() {
$this->semValue = new Stmt\Switch_($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule135() {
$this->semValue = new Stmt\Break_(null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule136() {
$this->semValue = new Stmt\Break_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule137() {
$this->semValue = new Stmt\Continue_(null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule138() {
$this->semValue = new Stmt\Continue_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule139() {
$this->semValue = new Stmt\Return_(null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule140() {
$this->semValue = new Stmt\Return_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule141() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule142() {
$this->semValue = new Stmt\Global_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule143() {
$this->semValue = new Stmt\Static_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule144() {
$this->semValue = new Stmt\Echo_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule145() {
$this->semValue = new Stmt\InlineHTML($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule146() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule147() {
$this->semValue = new Stmt\Unset_($this->semStack[$this->stackPos-(5-3)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule148() {
$this->semValue = new Stmt\Foreach_($this->semStack[$this->stackPos-(7-3)], $this->semStack[$this->stackPos-(7-5)][0], ['keyVar' => null, 'byRef' => $this->semStack[$this->stackPos-(7-5)][1], 'stmts' => $this->semStack[$this->stackPos-(7-7)]], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
}
protected function reduceRule149() {
$this->semValue = new Stmt\Foreach_($this->semStack[$this->stackPos-(9-3)], $this->semStack[$this->stackPos-(9-7)][0], ['keyVar' => $this->semStack[$this->stackPos-(9-5)], 'byRef' => $this->semStack[$this->stackPos-(9-7)][1], 'stmts' => $this->semStack[$this->stackPos-(9-9)]], $this->startAttributeStack[$this->stackPos-(9-1)] + $this->endAttributes);
}
protected function reduceRule150() {
$this->semValue = new Stmt\Declare_($this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule151() {
$this->semValue = new Stmt\TryCatch($this->semStack[$this->stackPos-(6-3)], $this->semStack[$this->stackPos-(6-5)], $this->semStack[$this->stackPos-(6-6)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); $this->checkTryCatch($this->semValue);
}
protected function reduceRule152() {
$this->semValue = new Stmt\Throw_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule153() {
$this->semValue = new Stmt\Goto_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule154() {
$this->semValue = new Stmt\Label($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule155() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule156() {
$this->semValue = array(); /* means: no statement */
}
protected function reduceRule157() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule158() {
$startAttributes = $this->startAttributeStack[$this->stackPos-(1-1)]; if (isset($startAttributes['comments'])) { $this->semValue = new Stmt\Nop(['comments' => $startAttributes['comments']]); } else { $this->semValue = null; };
if ($this->semValue === null) $this->semValue = array(); /* means: no statement */
}
protected function reduceRule159() {
$this->semValue = array();
}
protected function reduceRule160() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule161() {
$this->semValue = new Stmt\Catch_(array($this->semStack[$this->stackPos-(8-3)]), substr($this->semStack[$this->stackPos-(8-4)], 1), $this->semStack[$this->stackPos-(8-7)], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes);
}
protected function reduceRule162() {
$this->semValue = null;
}
protected function reduceRule163() {
$this->semValue = new Stmt\Finally_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule164() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule165() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule166() {
$this->semValue = false;
}
protected function reduceRule167() {
$this->semValue = true;
}
protected function reduceRule168() {
$this->semValue = false;
}
protected function reduceRule169() {
$this->semValue = true;
}
protected function reduceRule170() {
$this->semValue = new Stmt\Function_($this->semStack[$this->stackPos-(10-3)], ['byRef' => $this->semStack[$this->stackPos-(10-2)], 'params' => $this->semStack[$this->stackPos-(10-5)], 'returnType' => $this->semStack[$this->stackPos-(10-7)], 'stmts' => $this->semStack[$this->stackPos-(10-9)]], $this->startAttributeStack[$this->stackPos-(10-1)] + $this->endAttributes);
}
protected function reduceRule171() {
$this->semValue = new Stmt\Class_($this->semStack[$this->stackPos-(7-2)], ['type' => $this->semStack[$this->stackPos-(7-1)], '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->checkClass($this->semValue, $this->stackPos-(7-2));
}
protected function reduceRule172() {
$this->semValue = new Stmt\Interface_($this->semStack[$this->stackPos-(6-2)], ['extends' => $this->semStack[$this->stackPos-(6-3)], 'stmts' => $this->semStack[$this->stackPos-(6-5)]], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
$this->checkInterface($this->semValue, $this->stackPos-(6-2));
}
protected function reduceRule173() {
$this->semValue = new Stmt\Trait_($this->semStack[$this->stackPos-(5-2)], ['stmts' => $this->semStack[$this->stackPos-(5-4)]], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule174() {
$this->semValue = 0;
}
protected function reduceRule175() {
$this->semValue = Stmt\Class_::MODIFIER_ABSTRACT;
}
protected function reduceRule176() {
$this->semValue = Stmt\Class_::MODIFIER_FINAL;
}
protected function reduceRule177() {
$this->semValue = null;
}
protected function reduceRule178() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule179() {
$this->semValue = array();
}
protected function reduceRule180() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule181() {
$this->semValue = array();
}
protected function reduceRule182() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule183() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule184() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule185() {
$this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule186() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule187() {
$this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule188() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule189() {
$this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule190() {
$this->semValue = null;
}
protected function reduceRule191() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule192() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule193() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule194() {
$this->semValue = new Stmt\DeclareDeclare($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule195() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule196() {
$this->semValue = $this->semStack[$this->stackPos-(4-3)];
}
protected function reduceRule197() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule198() {
$this->semValue = $this->semStack[$this->stackPos-(5-3)];
}
protected function reduceRule199() {
$this->semValue = array();
}
protected function reduceRule200() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule201() {
$this->semValue = new Stmt\Case_($this->semStack[$this->stackPos-(4-2)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule202() {
$this->semValue = new Stmt\Case_(null, $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule203() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule204() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule205() {
$this->semValue = is_array($this->semStack[$this->stackPos-(1-1)]) ? $this->semStack[$this->stackPos-(1-1)] : array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule206() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule207() {
$this->semValue = array();
}
protected function reduceRule208() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule209() {
$this->semValue = new Stmt\ElseIf_($this->semStack[$this->stackPos-(3-2)], is_array($this->semStack[$this->stackPos-(3-3)]) ? $this->semStack[$this->stackPos-(3-3)] : array($this->semStack[$this->stackPos-(3-3)]), $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule210() {
$this->semValue = array();
}
protected function reduceRule211() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule212() {
$this->semValue = new Stmt\ElseIf_($this->semStack[$this->stackPos-(4-2)], $this->semStack[$this->stackPos-(4-4)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule213() {
$this->semValue = null;
}
protected function reduceRule214() {
$this->semValue = new Stmt\Else_(is_array($this->semStack[$this->stackPos-(2-2)]) ? $this->semStack[$this->stackPos-(2-2)] : array($this->semStack[$this->stackPos-(2-2)]), $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule215() {
$this->semValue = null;
}
protected function reduceRule216() {
$this->semValue = new Stmt\Else_($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule217() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)], false);
}
protected function reduceRule218() {
$this->semValue = array($this->semStack[$this->stackPos-(2-2)], true);
}
protected function reduceRule219() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)], false);
}
protected function reduceRule220() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule221() {
$this->semValue = array();
}
protected function reduceRule222() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule223() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule224() {
$this->semValue = new Node\Param(substr($this->semStack[$this->stackPos-(4-4)], 1), null, $this->semStack[$this->stackPos-(4-1)], $this->semStack[$this->stackPos-(4-2)], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes); $this->checkParam($this->semValue);
}
protected function reduceRule225() {
$this->semValue = new Node\Param(substr($this->semStack[$this->stackPos-(6-4)], 1), $this->semStack[$this->stackPos-(6-6)], $this->semStack[$this->stackPos-(6-1)], $this->semStack[$this->stackPos-(6-2)], $this->semStack[$this->stackPos-(6-3)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes); $this->checkParam($this->semValue);
}
protected function reduceRule226() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule227() {
$this->semValue = 'array';
}
protected function reduceRule228() {
$this->semValue = 'callable';
}
protected function reduceRule229() {
$this->semValue = null;
}
protected function reduceRule230() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule231() {
$this->semValue = null;
}
protected function reduceRule232() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule233() {
$this->semValue = array();
}
protected function reduceRule234() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule235() {
$this->semValue = array(new Node\Arg($this->semStack[$this->stackPos-(3-2)], false, false, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes));
}
protected function reduceRule236() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule237() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule238() {
$this->semValue = new Node\Arg($this->semStack[$this->stackPos-(1-1)], false, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule239() {
$this->semValue = new Node\Arg($this->semStack[$this->stackPos-(2-2)], true, false, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule240() {
$this->semValue = new Node\Arg($this->semStack[$this->stackPos-(2-2)], false, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule241() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule242() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule243() {
$this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule244() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule245() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule246() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule247() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule248() {
$this->semValue = new Stmt\StaticVar(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule249() {
$this->semValue = new Stmt\StaticVar(substr($this->semStack[$this->stackPos-(3-1)], 1), $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule250() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule251() {
$this->semValue = array();
}
protected function reduceRule252() {
$this->semValue = new Stmt\Property($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes); $this->checkProperty($this->semValue, $this->stackPos-(3-1));
}
protected function reduceRule253() {
$this->semValue = new Stmt\ClassConst($this->semStack[$this->stackPos-(3-2)], 0, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule254() {
$this->semValue = new Stmt\ClassMethod($this->semStack[$this->stackPos-(9-4)], ['type' => $this->semStack[$this->stackPos-(9-1)], 'byRef' => $this->semStack[$this->stackPos-(9-3)], 'params' => $this->semStack[$this->stackPos-(9-6)], 'returnType' => $this->semStack[$this->stackPos-(9-8)], 'stmts' => $this->semStack[$this->stackPos-(9-9)]], $this->startAttributeStack[$this->stackPos-(9-1)] + $this->endAttributes);
$this->checkClassMethod($this->semValue, $this->stackPos-(9-1));
}
protected function reduceRule255() {
$this->semValue = new Stmt\TraitUse($this->semStack[$this->stackPos-(3-2)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule256() {
$this->semValue = array();
}
protected function reduceRule257() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule258() {
$this->semValue = array();
}
protected function reduceRule259() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule260() {
$this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule261() {
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(5-1)][0], $this->semStack[$this->stackPos-(5-1)][1], $this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-4)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule262() {
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], $this->semStack[$this->stackPos-(4-3)], null, $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule263() {
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], null, $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule264() {
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$this->stackPos-(4-1)][0], $this->semStack[$this->stackPos-(4-1)][1], null, $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule265() {
$this->semValue = array($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)]);
}
protected function reduceRule266() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule267() {
$this->semValue = array(null, $this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule268() {
$this->semValue = null;
}
protected function reduceRule269() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule270() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule271() {
$this->semValue = 0;
}
protected function reduceRule272() {
$this->semValue = 0;
}
protected function reduceRule273() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule274() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule275() {
$this->checkModifier($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->stackPos-(2-2)); $this->semValue = $this->semStack[$this->stackPos-(2-1)] | $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule276() {
$this->semValue = Stmt\Class_::MODIFIER_PUBLIC;
}
protected function reduceRule277() {
$this->semValue = Stmt\Class_::MODIFIER_PROTECTED;
}
protected function reduceRule278() {
$this->semValue = Stmt\Class_::MODIFIER_PRIVATE;
}
protected function reduceRule279() {
$this->semValue = Stmt\Class_::MODIFIER_STATIC;
}
protected function reduceRule280() {
$this->semValue = Stmt\Class_::MODIFIER_ABSTRACT;
}
protected function reduceRule281() {
$this->semValue = Stmt\Class_::MODIFIER_FINAL;
}
protected function reduceRule282() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule283() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule284() {
$this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule285() {
$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);
}
protected function reduceRule286() {
$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->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule288() {
$this->semValue = array();
}
protected function reduceRule289() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule290() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule291() {
$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 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);
}
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);
}
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);
}
protected function reduceRule295() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule296() {
$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\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\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\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\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\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\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\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\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\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\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\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\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\PostInc($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule310() {
$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\PostDec($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule312() {
$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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule331() {
$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\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule333() {
$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\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\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\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\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\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\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\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\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\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 = 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 = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule345() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule346() {
$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 reduceRule347() {
$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 reduceRule348() {
$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 reduceRule349() {
$this->semValue = new Expr\Isset_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule350() {
$this->semValue = new Expr\Empty_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule351() {
$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 reduceRule352() {
$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 reduceRule353() {
$this->semValue = new Expr\Eval_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule354() {
$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 reduceRule355() {
$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 reduceRule356() {
$this->semValue = new Expr\Cast\Int_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule357() {
$this->semValue = new Expr\Cast\Double($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule358() {
$this->semValue = new Expr\Cast\String_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule359() {
$this->semValue = new Expr\Cast\Array_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule360() {
$this->semValue = new Expr\Cast\Object_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule361() {
$this->semValue = new Expr\Cast\Bool_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule362() {
$this->semValue = new Expr\Cast\Unset_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule363() {
$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 reduceRule364() {
$this->semValue = new Expr\ErrorSuppress($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule365() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule366() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule367() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule368() {
$this->semValue = new Expr\ShellExec($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule369() {
$this->semValue = new Expr\Print_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule370() {
$this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule371() {
$this->semValue = new Expr\YieldFrom($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule372() {
$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 reduceRule373() {
$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 reduceRule374() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule375() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule376() {
$this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(2-2)], null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule377() {
$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 reduceRule378() {
$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 reduceRule379() {
$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 reduceRule380() {
$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 reduceRule381() {
$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 reduceRule382() {
$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);
}
protected function reduceRule384() {
$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 reduceRule385() {
$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 reduceRule386() {
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 reduceRule387() {
$this->semValue = array();
}
protected function reduceRule388() {
$this->semValue = $this->semStack[$this->stackPos-(4-3)];
}
protected function reduceRule389() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule390() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule391() {
$this->semValue = new Expr\ClosureUse(substr($this->semStack[$this->stackPos-(2-2)], 1), $this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule392() {
$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 reduceRule393() {
$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 reduceRule394() {
$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 reduceRule395() {
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);
} elseif ($this->semStack[$this->stackPos-(2-1)] instanceof Node\Expr\ArrayDimFetch) {
$tmp = $this->semStack[$this->stackPos-(2-1)];
while ($tmp->var instanceof Node\Expr\ArrayDimFetch) {
$tmp = $tmp->var;
}
$this->semValue = new Expr\StaticCall($tmp->var->class, $this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
$tmp->var = new Expr\Variable($tmp->var->name, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
} else {
throw new \Exception;
}
}
protected function reduceRule396() {
$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 reduceRule397() {
$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 reduceRule398() {
$this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule399() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule400() {
$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\FullyQualified($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule402() {
$this->semValue = new Name\Relative($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule403() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule404() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule405() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule406() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule407() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule408() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule409() {
$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 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);
}
protected function reduceRule411() {
$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 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);
}
protected function reduceRule413() {
$this->semValue = null;
}
protected function reduceRule414() {
$this->semValue = null;
}
protected function reduceRule415() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule416() {
$this->semValue = array();
}
protected function reduceRule417() {
$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 reduceRule418() {
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 reduceRule419() {
$this->semValue = array();
}
protected function reduceRule420() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule421() {
$this->semValue = $this->parseLNumber($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes, true);
}
protected function reduceRule422() {
$this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$this->stackPos-(1-1)]), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule423() {
$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 reduceRule424() {
$this->semValue = new Scalar\MagicConst\Line($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule425() {
$this->semValue = new Scalar\MagicConst\File($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule426() {
$this->semValue = new Scalar\MagicConst\Dir($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule427() {
$this->semValue = new Scalar\MagicConst\Class_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule428() {
$this->semValue = new Scalar\MagicConst\Trait_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule429() {
$this->semValue = new Scalar\MagicConst\Method($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule430() {
$this->semValue = new Scalar\MagicConst\Function_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule431() {
$this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule432() {
$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 reduceRule433() {
$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 reduceRule434() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule435() {
$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 reduceRule436() {
$this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule437() {
$this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule438() {
$this->semValue = new Expr\Array_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule439() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule440() {
$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 reduceRule441() {
$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 reduceRule442() {
$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 reduceRule443() {
$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 reduceRule444() {
$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 reduceRule445() {
$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 reduceRule446() {
$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 reduceRule447() {
$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 reduceRule448() {
$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 reduceRule449() {
$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 reduceRule450() {
$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 reduceRule451() {
$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 reduceRule452() {
$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 reduceRule453() {
$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 reduceRule454() {
$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 reduceRule455() {
$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 reduceRule456() {
$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 reduceRule457() {
$this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule458() {
$this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule459() {
$this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule460() {
$this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule461() {
$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 reduceRule462() {
$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 reduceRule463() {
$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 reduceRule464() {
$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 reduceRule465() {
$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 reduceRule466() {
$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 reduceRule467() {
$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 reduceRule468() {
$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 reduceRule469() {
$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 reduceRule470() {
$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 reduceRule471() {
$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 reduceRule472() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule473() {
$this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule474() {
$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 reduceRule475() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule476() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule477() {
$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 reduceRule478() {
$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 reduceRule479() {
$this->semValue = array();
}
protected function reduceRule480() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule481() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule482() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule483() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule484() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule485() {
$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 reduceRule486() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule487() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule488() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule489() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule490() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule491() {
$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 reduceRule492() {
$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 reduceRule493() {
$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 reduceRule494() {
$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 reduceRule495() {
$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 reduceRule496() {
$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 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);
}
protected function reduceRule498() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule499() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule500() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule501() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule502() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule503() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule504() {
$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 reduceRule505() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule506() {
$this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], substr($this->semStack[$this->stackPos-(3-3)], 1), $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule507() {
$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 reduceRule508() {
$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 reduceRule509() {
$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 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);
}
protected function reduceRule511() {
$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 reduceRule512() {
$this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule513() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule514() {
$this->semValue = null;
}
protected function reduceRule515() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule516() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule517() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule518() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule519() {
$this->semValue = new Expr\Error($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes); $this->errorState = 2;
}
protected function reduceRule520() {
$this->semValue = new Expr\List_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule521() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule522() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule523() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule524() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule525() {
$this->semValue = null;
}
protected function reduceRule526() {
$this->semValue = array();
}
protected function reduceRule527() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule528() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule529() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule530() {
$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 reduceRule531() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule532() {
$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 reduceRule533() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(2-2)], null, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule534() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule535() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule536() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule537() {
$this->semValue = array($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]);
}
protected function reduceRule538() {
$this->semValue = new Scalar\EncapsedStringPart($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule539() {
$this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule540() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule541() {
$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 reduceRule542() {
$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 reduceRule543() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule544() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule545() {
$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 reduceRule546() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule547() {
$this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule548() {
$this->semValue = $this->parseNumString($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule549() {
$this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
}