php-parser/lib/PhpParser/Parser/Php7.php
Nikita Popov 574665b45b PHP 7.1: list() with keys
Expr\List will now contain ArrayItems instead of plain variables.
I'm reusing ArrayItem, because code handling list() must also handle
arrays, and this allows both to go through the same code path.

This also renames Expr\List->vars to ->items.

TODO: Should Expr\List be dropped in favor of Expr\Array with an
extra flag?
2016-07-09 21:55:55 +02:00

2736 lines
130 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 Php7 extends \PhpParser\ParserAbstract
{
protected $tokenToSymbolMapSize = 392;
protected $actionTableSize = 881;
protected $gotoTableSize = 409;
protected $invalidSymbol = 157;
protected $errorSymbol = 1;
protected $defaultAction = -32766;
protected $unexpectedTokenRule = 32767;
protected $YY2TBLSTATE = 335;
protected $YYNLSTATES = 563;
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, 155, 157, 156, 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, 154, 34, 157, 153, 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(
568, 569, 570, 571, 572, 215, 573, 574, 575, 611,
612, 0, 27, 99, 100, 101, 102, 103, 104, 105,
106, 107, 108, 109, 110,-32766,-32766,-32766, 95, 96,
97, 271, 240, -465, -265,-32766,-32766,-32766,-32766,-32766,
-32766, 529, 244, 114, 98,-32766, 342,-32766,-32766,-32766,
-32766,-32766, 576, 868, 870,-32766, 285,-32766,-32766,-32766,
-32766,-32766,-32766, 264,-32766, 24, 577, 578, 579, 580,
581, 582, 583,-32766, 241, 643, 837, 838, 839, 836,
835, 834, 584, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 614, 615, 616, 617, 618, 606, 607,
608, 609, 610, 595, 596, 597, 598, 599, 600, 601,
637, 638, 639, 640, 641, 642, 602, 603, 604, 605,
635, 626, 624, 625, 621, 622, 116, 613, 619, 620,
627, 628, 630, 629, 631, 632, 42, 43, 379, 44,
45, 623, 634, 633, -212, 46, 47, 376, 48, 224,
-32766,-32766,-32766, 227,-32766, 22,-32767,-32767,-32767,-32767,
90, 91, 92, 93, 94, 645, -217, 998, -421, 518,
-32766, 964,-32766,-32766,-32766,-32766, -422, 1011, -465, 645,
-465, 49, 50, 1042, 21, 1044, 1043, 51, 226, 52,
220, 221, 53, 54, 55, 56, 57, 58, 59, 60,
943, 22, 238, 61, 349, -454, 92, 93, 94, 965,
966, 645, 305, 998, 275, 1034, 28, 964, 397, 267,
41, 714, 837, 838, 839, 836, 835, 834, 829, -421,
-236, 407, 788, 789, 351, 519, 353, -422, 351, 65,
217, -464, 815, -421, 273, 407, 406, 396, 351, 122,
-421, -422, -424, 130, 392, 393, 659, 660, -422, 356,
-425, 120, 536, 396, 397, -420, 970, 971, 972, 973,
967, 968, 243, 25, 223, 456, -159, 407, 974, 969,
351, 125, 131,-32766, -456, 63, 111, 253, 810, 254,
273, 380, -122, -122, -122, -4, 714, 381,-32766,-32766,
337, 703, 40, 244, 33, 17, 382, -122, 383, -122,
384, -122, 385, -122,-32766, 386, -122, -122, -122, 34,
35, 387, 350, 224, 36, 388, -420, 367, 62, 795,
288, 286, 287, 389, 390,-32766,-32766,-32766, 348, 391,
-420, -420, 689, 732, 394, 395,-32766, -420, 713, 38,
-454,-32766,-32766,-32766, 344,-32766, 365,-32766,-32766,-32766,
998,-32766, -160, 257, 1039, 1014, 380,-32766, 716, 534,
-122,-32766, 381,-32766,-32766, -236, 703, 294, 7, 33,
17, 382,-32766, 383, 115, 384, -464, 385, -464, 359,
386,-32766,-32766,-32766, 34, 35, 387, 350, 343, 36,
388, 360, -420, 62, 252, 714, 286, 287, 389, 390,
256,-32766, 128, 761, 391, 119, -420, 651, 732, 394,
395, -159, 434, -420,-32766,-32766, 72, 73, 74, -456,
121, 113, 124, 540, 551, 120, 998, 273, 269, 118,
794, 503, 504, 716, 534, -4, 26, 368, 75, 76,
77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
97, 700, 240, 117, 714, 380,-32766,-32766,-32766, 978,
112, 381, 242, 936, 98, 703, 492, 18, 33, 17,
382, 712, 383, 546, 384, 704, 385, 127, 296, 386,
126, 16, 541, 34, 35, 387, 714, -160, 36, 388,
659, 660, 62, 273, 225, 286, 287, 374, 6, 811,
-32766,-32766, 216, 391, 725, 488, 489, 652, 537, 222,
658, 240, 762, 98, 538, 814, 562, 826, 552, 39,
513, 314, 701, 238, 380, 443, 447, 446, 493, 528,
381, 433, 748, 534, 703, 428, 354, 33, 17, 382,
645, 383, 357, 384, 438, 385,-32766, 355, 386, 646,
672, 514, 34, 35, 387, 714, 380, 36, 388, 1037,
427, 62, 381, 501, 286, 287, 703, 490, 939, 33,
17, 382, 391, 383, 517, 384, 432, 385, 268, 497,
386, 10, 265, 539, 34, 35, 387, 714, 214, 36,
388, 491, -80, 62, 450, 507, 286, 287, 498, 486,
733, 716, 534, 734, 391, 270, 0, 396, 266, 561,
977, 0, 339, 0, 980, 547, 0, 0, 293, 0,
0, 0, 0, 0, 0, 380, 0, 0, 0, 0,
0, 381, 0, 716, 534, 703, 0, 440, 33, 17,
382, 560, 383, 9, 384, 3, 385, -381, 15, 386,
324, 0, 320, 34, 35, 387, 714, 380, 36, 388,
356, 338, 62, 381, 319, 286, 287, 703, 308, 31,
33, 17, 382, 391, 383, 727, 384, 820, 385, 656,
655, 386, 818, 702, 710, 34, 35, 387, 32, 819,
36, 388, 822, 694, 62, 744, 746, 286, 287, 692,
756, 755, 716, 534, 749, 391, 764, 821, 705, 699,
711, 698, 697, 657, 0, 336, 335, 263, 262, 558,
557, 555, 553, 550, 549, 545, 380, 544, 542, 535,
71, 1003, 381, 719, 716, 534, 703, 931, 930, 33,
17, 382, 728, 383, 721, 384, 827, 385, 653, 731,
386, 662, 661, 730, 34, 35, 387, 729, 932, 36,
388, 664, 663, 62, 753, 554, 286, 287,-32766,-32766,
-32766, 690, 1038, 999, 391, 992, 1004, 1009, 1012, 754,
1040, 654, 1041, 0, 30, -445, 346, 341,-32766, 272,
-32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767,
-32767, 237, 236, 716, 534, 235, 924, 234, 219, 218,
132, 129, 123, -425, -424, -423, 70, 20, 23, 69,
68, 29, 37, 64, 67, 66, -447, 0, 19, 248,
908, 295, 465, -215, 482, 907, 470, 527, 911, 11,
962, 953, 524, -213, 377, 373, 371, 369, 14, 13,
12, -212, 0, -392, 0, 1036, 990, 991, 961, 0,
979
);
protected $actionCheck = array(
2, 3, 4, 5, 6, 13, 8, 9, 10, 11,
12, 0, 15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, 26, 27, 8, 9, 10, 50, 51,
52, 7, 54, 7, 79, 8, 9, 10, 8, 9,
10, 77, 28, 13, 66, 28, 7, 30, 31, 32,
33, 34, 54, 56, 57, 28, 7, 30, 31, 32,
33, 34, 35, 7, 109, 7, 68, 69, 70, 71,
72, 73, 74, 118, 7, 77, 112, 113, 114, 115,
116, 117, 84, 85, 86, 87, 88, 89, 90, 91,
92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 7, 129, 130, 131,
132, 133, 134, 135, 136, 137, 2, 3, 4, 5,
6, 143, 144, 145, 152, 11, 12, 7, 14, 35,
8, 9, 10, 35, 8, 67, 41, 42, 43, 44,
45, 46, 47, 48, 49, 77, 152, 79, 67, 77,
28, 83, 30, 31, 32, 33, 67, 77, 152, 77,
154, 47, 48, 77, 7, 79, 80, 53, 7, 55,
56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
112, 67, 68, 69, 70, 7, 47, 48, 49, 75,
76, 77, 79, 79, 67, 82, 13, 83, 130, 109,
7, 1, 112, 113, 114, 115, 116, 117, 118, 128,
7, 143, 130, 131, 146, 143, 102, 128, 146, 151,
13, 7, 150, 142, 156, 143, 112, 129, 146, 149,
149, 142, 151, 15, 120, 121, 102, 103, 149, 146,
151, 147, 149, 129, 130, 67, 132, 133, 134, 135,
136, 137, 138, 140, 141, 128, 7, 143, 144, 145,
146, 67, 15, 67, 7, 151, 15, 153, 148, 155,
156, 71, 72, 73, 74, 0, 1, 77, 67, 83,
146, 81, 67, 28, 84, 85, 86, 87, 88, 89,
90, 91, 92, 93, 83, 95, 96, 97, 98, 99,
100, 101, 102, 35, 104, 105, 128, 29, 108, 152,
7, 111, 112, 113, 114, 8, 9, 10, 7, 119,
142, 67, 122, 123, 124, 125, 130, 149, 1, 67,
152, 8, 9, 10, 123, 28, 7, 30, 31, 32,
79, 130, 7, 128, 150, 152, 71, 151, 148, 149,
150, 28, 77, 30, 31, 152, 81, 142, 7, 84,
85, 86, 151, 88, 149, 90, 152, 92, 154, 7,
95, 8, 9, 10, 99, 100, 101, 102, 103, 104,
105, 7, 128, 108, 109, 1, 111, 112, 113, 114,
128, 28, 15, 29, 119, 29, 142, 122, 123, 124,
125, 152, 82, 149, 8, 9, 8, 9, 10, 152,
149, 149, 15, 29, 29, 147, 79, 156, 143, 15,
152, 72, 73, 148, 149, 150, 28, 149, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 148, 54, 15, 1, 71, 8, 9, 10, 139,
15, 77, 29, 152, 66, 81, 72, 73, 84, 85,
86, 29, 88, 29, 90, 148, 92, 97, 98, 95,
29, 152, 29, 99, 100, 101, 1, 152, 104, 105,
102, 103, 108, 156, 35, 111, 112, 102, 103, 148,
130, 131, 35, 119, 35, 106, 107, 148, 149, 35,
148, 54, 148, 66, 29, 148, 149, 148, 149, 67,
74, 78, 148, 68, 71, 86, 77, 77, 87, 89,
77, 77, 148, 149, 81, 77, 102, 84, 85, 86,
77, 88, 77, 90, 82, 92, 82, 77, 95, 77,
77, 91, 99, 100, 101, 1, 71, 104, 105, 77,
77, 108, 77, 79, 111, 112, 81, 79, 79, 84,
85, 86, 119, 88, 79, 90, 79, 92, 110, 93,
95, 94, 126, 29, 99, 100, 101, 1, 94, 104,
105, 154, 94, 108, 94, 96, 111, 112, 96, 109,
123, 148, 149, 123, 119, 126, -1, 129, 127, 148,
139, -1, 146, -1, 139, 29, -1, -1, 142, -1,
-1, -1, -1, -1, -1, 71, -1, -1, -1, -1,
-1, 77, -1, 148, 149, 81, -1, 146, 84, 85,
86, 148, 88, 142, 90, 142, 92, 142, 152, 95,
146, -1, 146, 99, 100, 101, 1, 71, 104, 105,
146, 146, 108, 77, 146, 111, 112, 81, 146, 148,
84, 85, 86, 119, 88, 147, 90, 148, 92, 148,
148, 95, 148, 148, 148, 99, 100, 101, 148, 148,
104, 105, 148, 148, 108, 148, 148, 111, 112, 148,
148, 148, 148, 149, 148, 119, 148, 148, 148, 148,
148, 148, 148, 148, -1, 149, 149, 149, 149, 149,
149, 149, 149, 149, 149, 149, 71, 149, 149, 149,
149, 154, 77, 150, 148, 149, 81, 150, 150, 84,
85, 86, 150, 88, 150, 90, 150, 92, 150, 150,
95, 150, 150, 150, 99, 100, 101, 150, 150, 104,
105, 150, 150, 108, 150, 150, 111, 112, 8, 9,
10, 150, 150, 150, 119, 150, 150, 150, 150, 150,
150, 150, 150, -1, 151, 151, 151, 151, 28, 151,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 151, 151, 148, 149, 151, 153, 151, 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, 152,
152, 152, -1, 153, -1, 154, 154, 154, 154, -1,
155
);
protected $actionBase = array(
0, 220, 295, 281, 92, 549, -2, -2, -2, -2,
-36, 574, 473, 606, 473, 505, 404, 675, 675, 675,
288, 114, 494, 494, 494, 463, 386, 487, 479, 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, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 134, 384, 347, 203, 556, 697, 706, 700,
516, 707, 514, 699, 698, 227, 642, 643, 471, 645,
646, 647, 648, 702, 457, 696, 705, 418, 418, 418,
418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
418, 418, 418, 146, 30, 416, 468, 468, 468, 468,
468, 468, 468, 468, 468, 468, 468, 468, 468, 468,
468, 468, 468, 468, 468, 383, 383, 383, 343, 327,
198, 142, 17, 274, 27, 780, 780, 780, 780, 780,
115, 115, 115, 115, 118, 118, 475, 498, 88, 88,
88, 88, 88, 88, 88, 88, 88, 88, 619, 623,
627, 628, 159, 159, 14, 14, 14, 14, 231, -45,
216, 275, 275, 340, 102, 495, 725, 109, 101, -22,
-22, -22, 154, 482, 133, 133, 100, 100, 274, 274,
235, 274, 408, 408, 408, 390, 390, 390, 390, 113,
390, 390, 390, 601, 484, 106, 522, 634, 387, 519,
649, 282, 26, 234, 535, 486, 357, 454, 357, 419,
414, 369, 525, 357, 357, 298, 384, 389, 477, 555,
469, 382, 552, 323, 394, 147, 379, 349, 589, 551,
704, 269, 703, 213, 214, 477, 477, 477, 177, 588,
587, 223, -8, 632, 586, 355, 415, 277, 631, 622,
140, 621, 371, 331, 554, 483, 483, 483, 483, 483,
483, 489, 483, 478, 686, 686, 470, 508, 489, 691,
489, 483, 686, 489, 489, 476, 483, 499, 499, 478,
517, 501, 686, 686, 501, 470, 489, 513, 481, 510,
548, 453, 453, 510, 489, 453, 508, 453, 11, 692,
694, 462, 693, 690, 689, 655, 688, 503, 600, 497,
500, 678, 677, 685, 474, 490, 653, 687, 511, 585,
485, 271, 465, 523, 472, 684, 454, 534, 467, 467,
467, 472, 682, 467, 467, 467, 467, 467, 467, 467,
467, 724, 58, 496, 459, 584, 583, 582, 458, 581,
542, 520, 424, 593, 491, 511, 511, 641, 720, 673,
492, 676, 709, 681, 541, 119, 417, 674, 635, 538,
493, 526, 671, 592, 271, 708, 502, 652, 511, 651,
467, 654, 695, 722, 723, 683, 597, 715, 67, 524,
580, 24, 721, 618, 591, 590, 560, 718, 701, 714,
713, 24, 565, 461, 711, 506, 656, 504, 658, 599,
397, 650, 680, 578, 717, 716, 719, 576, 573, 598,
596, 238, 267, 679, 464, 466, 480, 572, 509, 515,
614, 595, 670, 571, 568, 612, 608, 710, 518, 534,
521, 488, 507, 460, 594, 607, 712, 405, 567, 579,
564, 603, 561, 616, 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, 0,
0, 0, 0, -2, 134, 134, 134, 134, 134, 134,
134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
134, 134, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 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, 418, 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, 0, 0, 0, 0, 0, 418, 418, 418, 418,
418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
418, 418, 418, 418, 418, 418, 418, 418, 418, 418,
418, 418, 418, -3, 418, 418, -3, 418, 418, 418,
418, 418, 418, -22, -22, -22, -22, 88, 88, 88,
88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 110, 110, 110, 110, -22, -22, 102, 102, 102,
102, 88, 110, 88, 102, 102, 133, 0, 133, 133,
0, 0, 0, 0, 0, 483, 133, 0, 0, 357,
357, 0, 0, 0, 0, 483, 483, 483, 102, 102,
102, 102, 483, 102, 102, 102, 357, 133, 0, 400,
400, 24, 400, 400, 0, 0, 0, 483, 483, 0,
517, 0, 0, 0, 0, 686, 0, 0, 0, 0,
0, 467, 119, 676, 0, 49, 0, 0, 0, 0,
0, 492, 49, 181, 0, 181, 0, 0, 467, 467,
467, 0, 492, 492, 0, 0, 56, 492, 0, 0,
0, 56, 39, 0, 39, 0, 0, 24
);
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, 466, 466, 466,32767,32767,32767,32767, 283,
458, 283, 283,32767, 418, 418, 418, 418, 418, 418,
418, 458,32767,32767,32767,32767,32767, 363,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,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767, 463,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767, 346, 347, 349,
350, 282, 419, 235, 462, 281, 116, 244, 237, 189,
280, 221, 119, 311, 364, 313, 362, 366, 312, 288,
293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
303, 304, 286, 287, 365, 343, 342, 341, 309, 310,
285, 314, 316, 285, 315, 332, 333, 330, 331, 334,
335, 336, 337, 338,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767, 267, 267,
267, 267, 323, 324, 227, 227, 227, 227,32767, 268,
32767, 227,32767,32767,32767,32767,32767, 412, 340, 318,
319, 317,32767, 391,32767, 393,32767,32767, 306, 308,
386, 289,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
32767, 388, 420, 420,32767,32767,32767, 380,32767, 157,
208, 210, 396,32767,32767,32767,32767,32767, 328,32767,
32767,32767,32767,32767,32767, 472,32767,32767,32767,32767,
32767, 420,32767,32767,32767, 320, 321, 322,32767,32767,
32767, 420, 420,32767,32767, 420,32767, 420,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
32767, 161,32767,32767, 394, 394,32767,32767, 161, 389,
161,32767,32767, 161, 161, 174,32767, 172, 172,32767,
32767, 176,32767, 434, 176,32767, 161, 194, 194, 372,
163, 229, 229, 372, 161, 229,32767, 229,32767,32767,
32767, 82,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767, 382,32767,
32767,32767, 400,32767, 413, 432, 380,32767, 326, 327,
329,32767, 422, 351, 352, 353, 354, 355, 356, 357,
359,32767, 459, 385,32767,32767,32767,32767,32767,32767,
84, 108, 243,32767, 471, 84, 383,32767, 471,32767,
32767,32767,32767,32767,32767, 284,32767,32767,32767, 84,
32767, 84,32767,32767, 455,32767,32767, 420, 384,32767,
325, 397, 438,32767,32767, 421,32767,32767, 216, 84,
32767, 175,32767,32767,32767,32767,32767,32767, 400,32767,
32767, 177,32767,32767, 420,32767,32767,32767,32767,32767,
279,32767,32767,32767,32767,32767, 420,32767,32767,32767,
32767, 220,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767,32767,32767,32767,32767, 82, 60,
32767, 261,32767,32767,32767,32767,32767,32767,32767,32767,
32767,32767,32767,32767, 121, 121, 3, 3, 121, 121,
121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
121, 121, 121, 246, 154, 246, 202, 246, 246, 205,
194, 194, 253
);
protected $goto = array(
163, 163, 135, 135, 135, 146, 148, 179, 164, 161,
145, 161, 161, 161, 162, 162, 162, 162, 162, 162,
162, 145, 157, 158, 159, 160, 176, 174, 177, 408,
409, 298, 410, 413, 414, 415, 416, 417, 418, 419,
420, 855, 136, 137, 138, 139, 140, 141, 142, 143,
144, 147, 173, 175, 178, 195, 198, 199, 201, 202,
204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
232, 233, 249, 250, 251, 315, 316, 317, 460, 180,
181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
191, 192, 193, 149, 194, 150, 165, 166, 167, 196,
168, 151, 152, 153, 169, 154, 197, 133, 170, 155,
171, 172, 156, 520, 200, 649, 430, 462, 476, 494,
686, 648, 277, 255, 246, 200, 435, 435, 435, 650,
763, 5, 743, 435, 556, 454, 424, 772, 767, 426,
429, 442, 463, 464, 466, 680, 454, 448, 451, 435,
559, 483, 485, 506, 510, 760, 515, 516, 774, 523,
759, 525, 531, 770, 533, 412, 412, 412, 412, 412,
412, 412, 412, 412, 412, 412, 412, 412, 412, 411,
411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
411, 411, 411, 300, 940, 530, 441, 452, 707, 435,
435, 449, 469, 435, 435, 673, 435, 500, 747, 370,
511, 229, 297, 230, 231, 436, 423, 8, 423, 797,
458, 478, 478, 963, 963, 963, 963, 963, 963, 963,
963, 963, 963, 963, 963, 459, 473, 673, 673, 461,
825, 532, 1030, 1030, 512, 823, 1031, 1031, 479, 480,
526, 455, 1030, 1023, 941, 299, 1031, 481, 278, 334,
1015, 495, 312, 853, 942, 994, 902, 793, 782, 284,
669, 1033, 786, 1005, 328, 667, 309, 306, 543, 331,
933, 801, 938, 364, 804, 677, 475, 375, 666, 666,
674, 674, 674, 676, 751, 665, 841, 0, 322, 496,
261, 327, 311, 311, 258, 259, 282, 457, 321, 283,
325, 484, 0, 0, 279, 280, 0, 0, 0, 777,
777, 0, 1020, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 787, 787, 787, 787, 944, 0, 944,
787, 787, 1002, 787, 1002, 0, 0, 0, 0, 0,
833, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1013, 1013, 0, 0, 741, 741, 741, 741, 0, 736,
742, 509, 0, 0, 0, 0, 0, 1000, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
803, 0, 803, 0, 0, 0, 0, 1006, 1007
);
protected $gotoCheck = array(
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 51, 45, 11, 8, 79, 35, 35,
10, 10, 63, 111, 111, 45, 8, 8, 8, 12,
10, 91, 10, 8, 10, 68, 10, 10, 10, 38,
38, 38, 38, 38, 38, 25, 68, 28, 8, 8,
28, 28, 28, 28, 28, 28, 28, 28, 28, 28,
28, 28, 28, 28, 28, 114, 114, 114, 114, 114,
114, 114, 114, 114, 114, 114, 114, 114, 114, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 52, 75, 5, 52, 52, 44, 8,
8, 8, 8, 8, 8, 19, 8, 55, 29, 52,
55, 59, 55, 59, 59, 8, 108, 52, 108, 77,
8, 69, 69, 69, 69, 69, 69, 69, 69, 69,
69, 69, 69, 69, 69, 2, 2, 19, 19, 7,
7, 7, 122, 122, 7, 7, 123, 123, 54, 54,
54, 113, 122, 121, 75, 41, 123, 61, 61, 61,
119, 43, 42, 94, 75, 75, 95, 73, 71, 14,
21, 122, 74, 116, 18, 20, 13, 9, 65, 17,
101, 78, 103, 57, 80, 22, 58, 99, 19, 19,
19, 19, 19, 19, 62, 19, 93, -1, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, -1, -1, 63, 63, -1, -1, -1, 68,
68, -1, 68, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 51, 51, 51, 51, 51, -1, 51,
51, 51, 79, 51, 79, -1, -1, -1, -1, -1,
91, -1, -1, -1, -1, -1, -1, -1, -1, -1,
79, 79, -1, -1, 51, 51, 51, 51, -1, 51,
51, 51, -1, -1, -1, -1, -1, 79, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
79, -1, 79, -1, -1, -1, -1, 79, 79
);
protected $gotoBase = array(
0, 0, -301, 0, 0, 185, 0, 236, -136, 8,
119, 113, 127, -8, 17, 0, 0, -57, 11, -47,
-10, 6, -74, -20, 0, 138, 0, 0, -388, 192,
0, 0, 0, 0, 0, 87, 0, 0, 104, 0,
0, 222, 43, 46, 184, 84, 0, 0, 0, 0,
0, 109, -157, 0, 13, -165, 0, -75, -78, -344,
0, -9, -71, -246, 0, -18, 0, 0, 105, 7,
0, 27, 0, 25, 28, -98, 0, 198, -7, 114,
-76, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 121, 0, -80, 47, 26, 0, 0, 0, -86,
0, -65, 0, -66, 0, 0, 0, 0, -22, 0,
0, -130, -35, 228, -49, 0, 16, 0, 0, 219,
0, 229, -3, 1, 0
);
protected $gotoDefault = array(
-32768, 378, 564, 2, 565, 636, 644, 502, 398, 431,
745, 687, 688, 302, 340, 399, 301, 329, 323, 675,
668, 670, 678, 134, 332, 681, 1, 683, 437, 715,
290, 691, 291, 505, 693, 444, 695, 696, 425, 303,
304, 445, 310, 477, 706, 203, 307, 708, 289, 709,
718, 292, 508, 487, 467, 499, 400, 361, 474, 228,
453, 471, 750, 276, 758, 548, 766, 769, 401, 402,
468, 781, 366, 791, 785, 958, 318, 796, 802, 989,
805, 808, 347, 330, 326, 812, 813, 4, 817, 521,
522, 832, 239, 840, 854, 345, 921, 923, 439, 372,
934, 358, 333, 937, 993, 352, 403, 362, 950, 260,
281, 245, 404, 421, 247, 405, 363, 996, 313, 1016,
422, 1024, 1032, 274, 472
);
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, 8, 9, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 14, 14, 15, 15,
15, 15, 17, 17, 13, 13, 18, 18, 19, 19,
20, 20, 21, 21, 16, 16, 22, 24, 24, 25,
26, 26, 28, 27, 27, 27, 27, 29, 29, 29,
29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
29, 29, 10, 10, 48, 48, 50, 49, 49, 42,
42, 52, 52, 53, 53, 11, 12, 12, 12, 56,
56, 56, 57, 57, 60, 60, 58, 58, 61, 61,
36, 36, 44, 44, 47, 47, 47, 46, 46, 62,
37, 37, 37, 37, 63, 63, 64, 64, 65, 65,
34, 34, 30, 30, 66, 32, 32, 67, 31, 31,
33, 33, 43, 43, 43, 43, 54, 54, 70, 70,
71, 71, 73, 73, 74, 74, 74, 72, 72, 55,
55, 75, 75, 76, 76, 77, 77, 77, 39, 39,
78, 40, 40, 80, 80, 59, 59, 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, 41, 41, 35, 35, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 100,
94, 94, 99, 99, 102, 102, 103, 104, 104, 104,
108, 108, 51, 51, 51, 95, 95, 106, 106, 96,
96, 98, 98, 98, 101, 101, 112, 112, 69, 114,
114, 114, 97, 97, 97, 97, 97, 97, 97, 97,
97, 97, 97, 97, 97, 97, 97, 97, 38, 38,
110, 110, 110, 105, 105, 105, 115, 115, 115, 115,
115, 115, 45, 45, 45, 79, 79, 79, 117, 109,
109, 109, 109, 109, 109, 107, 107, 107, 116, 116,
116, 68, 118, 118, 119, 119, 119, 119, 119, 113,
120, 120, 121, 121, 121, 121, 121, 111, 111, 111,
111, 123, 122, 122, 122, 122, 122, 122, 122, 124,
124, 124
);
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, 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, 7, 10,
5, 7, 9, 5, 3, 3, 3, 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, 5, 0, 2, 6, 0, 2,
0, 3, 1, 2, 1, 1, 1, 0, 1, 3,
4, 6, 1, 2, 1, 1, 1, 0, 1, 0,
2, 2, 3, 1, 3, 1, 2, 2, 3, 1,
1, 3, 1, 1, 3, 2, 0, 3, 4, 9,
3, 1, 3, 0, 2, 4, 5, 4, 4, 4,
3, 1, 1, 1, 3, 1, 1, 0, 1, 1,
2, 1, 1, 1, 1, 1, 1, 1, 3, 1,
3, 3, 1, 0, 1, 1, 3, 3, 3, 4,
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,
3, 5, 4, 3, 4, 4, 2, 2, 4, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1, 3, 2, 1, 2, 4, 2, 10, 11, 7,
3, 2, 0, 4, 1, 3, 2, 2, 2, 4,
1, 1, 1, 2, 3, 1, 1, 1, 1, 0,
3, 0, 1, 1, 0, 1, 1, 3, 3, 4,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 3, 2, 3, 3, 0, 1,
1, 3, 1, 1, 3, 1, 1, 4, 4, 4,
1, 4, 1, 1, 3, 1, 4, 2, 3, 1,
4, 4, 3, 3, 3, 1, 3, 1, 1, 3,
1, 4, 3, 1, 1, 1, 3, 3, 0, 1,
3, 1, 3, 1, 4, 2, 0, 2, 2, 1,
2, 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->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule81() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule82() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule83() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule84() {
$this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule85() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
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 = new Stmt\HaltCompiler($this->lexer->handleHaltCompiler(), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule89() {
$this->semValue = new Stmt\Namespace_($this->semStack[$this->stackPos-(3-2)], null, $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule90() {
$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);
}
protected function reduceRule91() {
$this->semValue = new Stmt\Namespace_(null, $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule92() {
$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 reduceRule93() {
$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 reduceRule94() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule95() {
$this->semValue = new Stmt\Const_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule96() {
$this->semValue = Stmt\Use_::TYPE_FUNCTION;
}
protected function reduceRule97() {
$this->semValue = Stmt\Use_::TYPE_CONSTANT;
}
protected function reduceRule98() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(7-3)], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(7-6)], $this->semStack[$this->stackPos-(7-2)], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
}
protected function reduceRule99() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(8-4)], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(8-7)], $this->semStack[$this->stackPos-(8-2)], $this->startAttributeStack[$this->stackPos-(8-1)] + $this->endAttributes);
}
protected function reduceRule100() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(6-2)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
}
protected function reduceRule101() {
$this->semValue = new Stmt\GroupUse(new Name($this->semStack[$this->stackPos-(7-3)], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(7-6)], Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
}
protected function reduceRule102() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule103() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule104() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule105() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule106() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule107() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule108() {
$this->semValue = new Stmt\UseUse($this->semStack[$this->stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule109() {
$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);
}
protected function reduceRule110() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule111() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule112() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)]; $this->semValue->type = Stmt\Use_::TYPE_NORMAL;
}
protected function reduceRule113() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)]; $this->semValue->type = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule114() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule115() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule116() {
$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 reduceRule117() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule118() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule119() {
$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 reduceRule120() {
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 reduceRule121() {
$this->semValue = array();
}
protected function reduceRule122() {
$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 reduceRule123() {
$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() {
throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule127() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule128() {
$this->semValue = new Stmt\If_($this->semStack[$this->stackPos-(7-3)], ['stmts' => is_array($this->semStack[$this->stackPos-(7-5)]) ? $this->semStack[$this->stackPos-(7-5)] : array($this->semStack[$this->stackPos-(7-5)]), 'elseifs' => $this->semStack[$this->stackPos-(7-6)], 'else' => $this->semStack[$this->stackPos-(7-7)]], $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
}
protected function reduceRule129() {
$this->semValue = new Stmt\If_($this->semStack[$this->stackPos-(10-3)], ['stmts' => $this->semStack[$this->stackPos-(10-6)], 'elseifs' => $this->semStack[$this->stackPos-(10-7)], 'else' => $this->semStack[$this->stackPos-(10-8)]], $this->startAttributeStack[$this->stackPos-(10-1)] + $this->endAttributes);
}
protected function reduceRule130() {
$this->semValue = new Stmt\While_($this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule131() {
$this->semValue = new Stmt\Do_($this->semStack[$this->stackPos-(7-5)], is_array($this->semStack[$this->stackPos-(7-2)]) ? $this->semStack[$this->stackPos-(7-2)] : array($this->semStack[$this->stackPos-(7-2)]), $this->startAttributeStack[$this->stackPos-(7-1)] + $this->endAttributes);
}
protected function reduceRule132() {
$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 reduceRule133() {
$this->semValue = new Stmt\Switch_($this->semStack[$this->stackPos-(5-3)], $this->semStack[$this->stackPos-(5-5)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule134() {
$this->semValue = new Stmt\Break_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule135() {
$this->semValue = new Stmt\Continue_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule136() {
$this->semValue = new Stmt\Return_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule137() {
$this->semValue = new Stmt\Global_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule138() {
$this->semValue = new Stmt\Static_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule139() {
$this->semValue = new Stmt\Echo_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule140() {
$this->semValue = new Stmt\InlineHTML($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule141() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule142() {
$this->semValue = new Stmt\Unset_($this->semStack[$this->stackPos-(5-3)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule143() {
$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 reduceRule144() {
$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 reduceRule145() {
$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 reduceRule146() {
$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);
}
protected function reduceRule147() {
$this->semValue = new Stmt\Throw_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule148() {
$this->semValue = new Stmt\Goto_($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule149() {
$this->semValue = new Stmt\Label($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule150() {
$this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule151() {
$this->semValue = array(); /* means: no statement */
}
protected function reduceRule152() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule153() {
$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 reduceRule154() {
$this->semValue = array();
}
protected function reduceRule155() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule156() {
$this->semValue = new Stmt\Catch_($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 reduceRule157() {
$this->semValue = null;
}
protected function reduceRule158() {
$this->semValue = $this->semStack[$this->stackPos-(4-3)];
}
protected function reduceRule159() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule160() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule161() {
$this->semValue = false;
}
protected function reduceRule162() {
$this->semValue = true;
}
protected function reduceRule163() {
$this->semValue = false;
}
protected function reduceRule164() {
$this->semValue = true;
}
protected function reduceRule165() {
$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 reduceRule166() {
$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);
}
protected function reduceRule167() {
$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);
}
protected function reduceRule168() {
$this->semValue = new Stmt\Trait_($this->semStack[$this->stackPos-(5-2)], $this->semStack[$this->stackPos-(5-4)], $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule169() {
$this->semValue = 0;
}
protected function reduceRule170() {
$this->semValue = Stmt\Class_::MODIFIER_ABSTRACT;
}
protected function reduceRule171() {
$this->semValue = Stmt\Class_::MODIFIER_FINAL;
}
protected function reduceRule172() {
$this->semValue = null;
}
protected function reduceRule173() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule174() {
$this->semValue = array();
}
protected function reduceRule175() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule176() {
$this->semValue = array();
}
protected function reduceRule177() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule178() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule179() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule180() {
$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 reduceRule181() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule182() {
$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 reduceRule183() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule184() {
$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 reduceRule185() {
$this->semValue = null;
}
protected function reduceRule186() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule187() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule188() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule189() {
$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 reduceRule190() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule191() {
$this->semValue = $this->semStack[$this->stackPos-(4-3)];
}
protected function reduceRule192() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule193() {
$this->semValue = $this->semStack[$this->stackPos-(5-3)];
}
protected function reduceRule194() {
$this->semValue = array();
}
protected function reduceRule195() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule196() {
$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 reduceRule197() {
$this->semValue = new Stmt\Case_(null, $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule198() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule199() {
$this->semValue = $this->semStack[$this->stackPos];
}
protected function reduceRule200() {
$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 reduceRule201() {
$this->semValue = $this->semStack[$this->stackPos-(4-2)];
}
protected function reduceRule202() {
$this->semValue = array();
}
protected function reduceRule203() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule204() {
$this->semValue = new Stmt\ElseIf_($this->semStack[$this->stackPos-(5-3)], is_array($this->semStack[$this->stackPos-(5-5)]) ? $this->semStack[$this->stackPos-(5-5)] : array($this->semStack[$this->stackPos-(5-5)]), $this->startAttributeStack[$this->stackPos-(5-1)] + $this->endAttributes);
}
protected function reduceRule205() {
$this->semValue = array();
}
protected function reduceRule206() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule207() {
$this->semValue = new Stmt\ElseIf_($this->semStack[$this->stackPos-(6-3)], $this->semStack[$this->stackPos-(6-6)], $this->startAttributeStack[$this->stackPos-(6-1)] + $this->endAttributes);
}
protected function reduceRule208() {
$this->semValue = null;
}
protected function reduceRule209() {
$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 reduceRule210() {
$this->semValue = null;
}
protected function reduceRule211() {
$this->semValue = new Stmt\Else_($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule212() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)], false);
}
protected function reduceRule213() {
$this->semValue = array($this->semStack[$this->stackPos-(2-2)], true);
}
protected function reduceRule214() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)], false);
}
protected function reduceRule215() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)], false);
}
protected function reduceRule216() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule217() {
$this->semValue = array();
}
protected function reduceRule218() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule219() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule220() {
$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);
}
protected function reduceRule221() {
$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);
}
protected function reduceRule222() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule223() {
$this->semValue = new Node\NullableType($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule224() {
$this->semValue = $this->handleBuiltinTypes($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule225() {
$this->semValue = 'array';
}
protected function reduceRule226() {
$this->semValue = 'callable';
}
protected function reduceRule227() {
$this->semValue = null;
}
protected function reduceRule228() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule229() {
$this->semValue = null;
}
protected function reduceRule230() {
$this->semValue = $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule231() {
$this->semValue = array();
}
protected function reduceRule232() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule233() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule234() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule235() {
$this->semValue = new Node\Arg($this->semStack[$this->stackPos-(1-1)], false, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule236() {
$this->semValue = new Node\Arg($this->semStack[$this->stackPos-(2-2)], true, false, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule237() {
$this->semValue = new Node\Arg($this->semStack[$this->stackPos-(2-2)], false, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule238() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule239() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule240() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-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 Stmt\StaticVar(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule244() {
$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 reduceRule245() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule246() {
$this->semValue = array();
}
protected function reduceRule247() {
$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);
}
protected function reduceRule248() {
$this->semValue = new Stmt\ClassConst($this->semStack[$this->stackPos-(4-3)], $this->semStack[$this->stackPos-(4-1)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule249() {
$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);
}
protected function reduceRule250() {
$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 reduceRule251() {
$this->semValue = array();
}
protected function reduceRule252() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule253() {
$this->semValue = array();
}
protected function reduceRule254() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule255() {
$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 reduceRule256() {
$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 reduceRule257() {
$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 reduceRule258() {
$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 reduceRule259() {
$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 reduceRule260() {
$this->semValue = array($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)]);
}
protected function reduceRule261() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule262() {
$this->semValue = array(null, $this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule263() {
$this->semValue = null;
}
protected function reduceRule264() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule265() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule266() {
$this->semValue = 0;
}
protected function reduceRule267() {
$this->semValue = 0;
}
protected function reduceRule268() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule269() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule270() {
Stmt\Class_::verifyModifier($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]); $this->semValue = $this->semStack[$this->stackPos-(2-1)] | $this->semStack[$this->stackPos-(2-2)];
}
protected function reduceRule271() {
$this->semValue = Stmt\Class_::MODIFIER_PUBLIC;
}
protected function reduceRule272() {
$this->semValue = Stmt\Class_::MODIFIER_PROTECTED;
}
protected function reduceRule273() {
$this->semValue = Stmt\Class_::MODIFIER_PRIVATE;
}
protected function reduceRule274() {
$this->semValue = Stmt\Class_::MODIFIER_STATIC;
}
protected function reduceRule275() {
$this->semValue = Stmt\Class_::MODIFIER_ABSTRACT;
}
protected function reduceRule276() {
$this->semValue = Stmt\Class_::MODIFIER_FINAL;
}
protected function reduceRule277() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule278() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule279() {
$this->semValue = new Stmt\PropertyProperty(substr($this->semStack[$this->stackPos-(1-1)], 1), null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule280() {
$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 reduceRule281() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule282() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule283() {
$this->semValue = array();
}
protected function reduceRule284() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule285() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule286() {
$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 reduceRule287() {
$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 reduceRule288() {
$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 reduceRule289() {
$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 reduceRule290() {
$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 reduceRule291() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule292() {
$this->semValue = new Expr\Clone_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule293() {
$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 reduceRule294() {
$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 reduceRule295() {
$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 reduceRule296() {
$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 reduceRule297() {
$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 reduceRule298() {
$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 reduceRule299() {
$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 reduceRule300() {
$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 reduceRule301() {
$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 reduceRule302() {
$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 reduceRule303() {
$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 reduceRule304() {
$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 reduceRule305() {
$this->semValue = new Expr\PostInc($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule306() {
$this->semValue = new Expr\PreInc($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule307() {
$this->semValue = new Expr\PostDec($this->semStack[$this->stackPos-(2-1)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule308() {
$this->semValue = new Expr\PreDec($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule309() {
$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 reduceRule310() {
$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 reduceRule311() {
$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 reduceRule312() {
$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 reduceRule313() {
$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 reduceRule314() {
$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 reduceRule315() {
$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 reduceRule316() {
$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 reduceRule317() {
$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 reduceRule318() {
$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 reduceRule319() {
$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 reduceRule320() {
$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 reduceRule321() {
$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 reduceRule322() {
$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 reduceRule323() {
$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 reduceRule324() {
$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 reduceRule325() {
$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 reduceRule326() {
$this->semValue = new Expr\UnaryPlus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule327() {
$this->semValue = new Expr\UnaryMinus($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule328() {
$this->semValue = new Expr\BooleanNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule329() {
$this->semValue = new Expr\BitwiseNot($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule330() {
$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 reduceRule331() {
$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 reduceRule332() {
$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 reduceRule333() {
$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 reduceRule334() {
$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 reduceRule335() {
$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 reduceRule336() {
$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 reduceRule337() {
$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 reduceRule338() {
$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 reduceRule339() {
$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 reduceRule340() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule341() {
$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 reduceRule342() {
$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 reduceRule343() {
$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 reduceRule344() {
$this->semValue = new Expr\Isset_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule345() {
$this->semValue = new Expr\Empty_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule346() {
$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 reduceRule347() {
$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 reduceRule348() {
$this->semValue = new Expr\Eval_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule349() {
$this->semValue = new Expr\Include_($this->semStack[$this->stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule350() {
$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 reduceRule351() {
$this->semValue = new Expr\Cast\Int_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule352() {
$this->semValue = new Expr\Cast\Double($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule353() {
$this->semValue = new Expr\Cast\String_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule354() {
$this->semValue = new Expr\Cast\Array_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule355() {
$this->semValue = new Expr\Cast\Object_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule356() {
$this->semValue = new Expr\Cast\Bool_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule357() {
$this->semValue = new Expr\Cast\Unset_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule358() {
$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 reduceRule359() {
$this->semValue = new Expr\ErrorSuppress($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule360() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule361() {
$this->semValue = new Expr\ShellExec($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule362() {
$this->semValue = new Expr\Print_($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule363() {
$this->semValue = new Expr\Yield_(null, null, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule364() {
$this->semValue = new Expr\Yield_($this->semStack[$this->stackPos-(2-2)], null, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule365() {
$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 reduceRule366() {
$this->semValue = new Expr\YieldFrom($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule367() {
$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 reduceRule368() {
$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 reduceRule369() {
$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)]);
}
protected function reduceRule370() {
$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 reduceRule371() {
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 reduceRule372() {
$this->semValue = array();
}
protected function reduceRule373() {
$this->semValue = $this->semStack[$this->stackPos-(4-3)];
}
protected function reduceRule374() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule375() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule376() {
$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 reduceRule377() {
$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 reduceRule378() {
$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 reduceRule379() {
$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 reduceRule380() {
$this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule381() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule382() {
$this->semValue = new Name($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule383() {
$this->semValue = new Name\FullyQualified($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule384() {
$this->semValue = new Name\Relative($this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule385() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule386() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule387() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule388() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule389() {
$this->semValue = null;
}
protected function reduceRule390() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule391() {
$this->semValue = array();
}
protected function reduceRule392() {
$this->semValue = array(new Scalar\EncapsedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$this->stackPos-(1-1)], '`'), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes));
}
protected function reduceRule393() {
foreach ($this->semStack[$this->stackPos-(1-1)] as $s) { if ($s instanceof Node\Scalar\EncapsedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', true); } }; $this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule394() {
$this->semValue = array();
}
protected function reduceRule395() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule396() {
$this->semValue = new Expr\ConstFetch($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule397() {
$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 reduceRule398() {
$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 reduceRule399() {
$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 reduceRule400() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule401() {
$attrs = $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes; $attrs['kind'] = ($this->semStack[$this->stackPos-(1-1)][0] === "'" || ($this->semStack[$this->stackPos-(1-1)][1] === "'" && ($this->semStack[$this->stackPos-(1-1)][0] === 'b' || $this->semStack[$this->stackPos-(1-1)][0] === 'B')) ? Scalar\String_::KIND_SINGLE_QUOTED : Scalar\String_::KIND_DOUBLE_QUOTED);
$this->semValue = new Scalar\String_(Scalar\String_::parse($this->semStack[$this->stackPos-(1-1)]), $attrs);
}
protected function reduceRule402() {
$this->semValue = Scalar\LNumber::fromString($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule403() {
$this->semValue = new Scalar\DNumber(Scalar\DNumber::parse($this->semStack[$this->stackPos-(1-1)]), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule404() {
$this->semValue = new Scalar\MagicConst\Line($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule405() {
$this->semValue = new Scalar\MagicConst\File($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule406() {
$this->semValue = new Scalar\MagicConst\Dir($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule407() {
$this->semValue = new Scalar\MagicConst\Class_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule408() {
$this->semValue = new Scalar\MagicConst\Trait_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule409() {
$this->semValue = new Scalar\MagicConst\Method($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule410() {
$this->semValue = new Scalar\MagicConst\Function_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule411() {
$this->semValue = new Scalar\MagicConst\Namespace_($this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule412() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule413() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule414() {
$attrs = $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes; $attrs['kind'] = strpos($this->semStack[$this->stackPos-(3-1)], "'") === false ? Scalar\String_::KIND_HEREDOC : Scalar\String_::KIND_NOWDOC; preg_match('/\A[bB]?<<<[ \t]*[\'"]?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)[\'"]?(?:\r\n|\n|\r)\z/', $this->semStack[$this->stackPos-(3-1)], $matches); $attrs['docLabel'] = $matches[1];;
$this->semValue = new Scalar\String_(Scalar\String_::parseDocString($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-2)]), $attrs);
}
protected function reduceRule415() {
$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 reduceRule416() {
$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 reduceRule417() {
$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 reduceRule418() {
$this->semValue = null;
}
protected function reduceRule419() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule420() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule421() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule422() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule423() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule424() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule425() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule426() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule427() {
$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 reduceRule428() {
$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 reduceRule429() {
$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 reduceRule430() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule431() {
$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 reduceRule432() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule433() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule434() {
$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 reduceRule435() {
$this->semValue = substr($this->semStack[$this->stackPos-(1-1)], 1);
}
protected function reduceRule436() {
$this->semValue = $this->semStack[$this->stackPos-(4-3)];
}
protected function reduceRule437() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(2-2)], $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule438() {
$this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule439() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule440() {
$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 reduceRule441() {
$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 reduceRule442() {
$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 reduceRule443() {
$this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule444() {
$this->semValue = new Expr\StaticPropertyFetch($this->semStack[$this->stackPos-(3-1)], $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule445() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule446() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule447() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule448() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule449() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule450() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule451() {
$this->semValue = new Expr\List_($this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule452() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule453() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule454() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule455() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)];
}
protected function reduceRule456() {
$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 reduceRule457() {
$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 reduceRule458() {
$this->semValue = null;
}
protected function reduceRule459() {
$this->semValue = $this->semStack[$this->stackPos-(1-1)]; $end = count($this->semValue)-1; if ($this->semValue[$end] === null) unset($this->semValue[$end]);
}
protected function reduceRule460() {
$this->semStack[$this->stackPos-(3-1)][] = $this->semStack[$this->stackPos-(3-3)]; $this->semValue = $this->semStack[$this->stackPos-(3-1)];
}
protected function reduceRule461() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule462() {
$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 reduceRule463() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(1-1)], null, false, $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule464() {
$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 reduceRule465() {
$this->semValue = new Expr\ArrayItem($this->semStack[$this->stackPos-(2-2)], null, true, $this->startAttributeStack[$this->stackPos-(2-1)] + $this->endAttributes);
}
protected function reduceRule466() {
$this->semValue = null;
}
protected function reduceRule467() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule468() {
$this->semStack[$this->stackPos-(2-1)][] = $this->semStack[$this->stackPos-(2-2)]; $this->semValue = $this->semStack[$this->stackPos-(2-1)];
}
protected function reduceRule469() {
$this->semValue = array($this->semStack[$this->stackPos-(1-1)]);
}
protected function reduceRule470() {
$this->semValue = array($this->semStack[$this->stackPos-(2-1)], $this->semStack[$this->stackPos-(2-2)]);
}
protected function reduceRule471() {
$this->semValue = new Scalar\EncapsedStringPart($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule472() {
$this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule473() {
$this->semValue = new Expr\ArrayDimFetch(new Expr\Variable(substr($this->semStack[$this->stackPos-(4-1)], 1), $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(4-3)], $this->startAttributeStack[$this->stackPos-(4-1)] + $this->endAttributes);
}
protected function reduceRule474() {
$this->semValue = new Expr\PropertyFetch(new Expr\Variable(substr($this->semStack[$this->stackPos-(3-1)], 1), $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes), $this->semStack[$this->stackPos-(3-3)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule475() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule476() {
$this->semValue = new Expr\Variable($this->semStack[$this->stackPos-(3-2)], $this->startAttributeStack[$this->stackPos-(3-1)] + $this->endAttributes);
}
protected function reduceRule477() {
$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 reduceRule478() {
$this->semValue = $this->semStack[$this->stackPos-(3-2)];
}
protected function reduceRule479() {
$this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule480() {
$this->semValue = new Scalar\String_($this->semStack[$this->stackPos-(1-1)], $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
protected function reduceRule481() {
$this->semValue = new Expr\Variable(substr($this->semStack[$this->stackPos-(1-1)], 1), $this->startAttributeStack[$this->stackPos-(1-1)] + $this->endAttributes);
}
}