mirror of
https://github.com/nikic/PHP-Parser.git
synced 2025-01-17 15:18:17 +01:00
502b090900
Types omitted in two places where we violate them currently: Namespace_::$stmts can be null during parsing, and Enum_::$scalarType can be a complex type for invalid programs.
2736 lines
172 KiB
PHP
2736 lines
172 KiB
PHP
<?php declare(strict_types=1);
|
|
|
|
namespace PhpParser\Parser;
|
|
|
|
use PhpParser\Error;
|
|
use PhpParser\Modifiers;
|
|
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 file grammar/php.y
|
|
* * the skeleton file grammar/parser.template
|
|
* * the preprocessing script grammar/rebuildParsers.php
|
|
*/
|
|
class Php8 extends \PhpParser\ParserAbstract
|
|
{
|
|
public const YYERRTOK = 256;
|
|
public const T_THROW = 257;
|
|
public const T_INCLUDE = 258;
|
|
public const T_INCLUDE_ONCE = 259;
|
|
public const T_EVAL = 260;
|
|
public const T_REQUIRE = 261;
|
|
public const T_REQUIRE_ONCE = 262;
|
|
public const T_LOGICAL_OR = 263;
|
|
public const T_LOGICAL_XOR = 264;
|
|
public const T_LOGICAL_AND = 265;
|
|
public const T_PRINT = 266;
|
|
public const T_YIELD = 267;
|
|
public const T_DOUBLE_ARROW = 268;
|
|
public const T_YIELD_FROM = 269;
|
|
public const T_PLUS_EQUAL = 270;
|
|
public const T_MINUS_EQUAL = 271;
|
|
public const T_MUL_EQUAL = 272;
|
|
public const T_DIV_EQUAL = 273;
|
|
public const T_CONCAT_EQUAL = 274;
|
|
public const T_MOD_EQUAL = 275;
|
|
public const T_AND_EQUAL = 276;
|
|
public const T_OR_EQUAL = 277;
|
|
public const T_XOR_EQUAL = 278;
|
|
public const T_SL_EQUAL = 279;
|
|
public const T_SR_EQUAL = 280;
|
|
public const T_POW_EQUAL = 281;
|
|
public const T_COALESCE_EQUAL = 282;
|
|
public const T_COALESCE = 283;
|
|
public const T_BOOLEAN_OR = 284;
|
|
public const T_BOOLEAN_AND = 285;
|
|
public const T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG = 286;
|
|
public const T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG = 287;
|
|
public const T_IS_EQUAL = 288;
|
|
public const T_IS_NOT_EQUAL = 289;
|
|
public const T_IS_IDENTICAL = 290;
|
|
public const T_IS_NOT_IDENTICAL = 291;
|
|
public const T_SPACESHIP = 292;
|
|
public const T_IS_SMALLER_OR_EQUAL = 293;
|
|
public const T_IS_GREATER_OR_EQUAL = 294;
|
|
public const T_SL = 295;
|
|
public const T_SR = 296;
|
|
public const T_INSTANCEOF = 297;
|
|
public const T_INC = 298;
|
|
public const T_DEC = 299;
|
|
public const T_INT_CAST = 300;
|
|
public const T_DOUBLE_CAST = 301;
|
|
public const T_STRING_CAST = 302;
|
|
public const T_ARRAY_CAST = 303;
|
|
public const T_OBJECT_CAST = 304;
|
|
public const T_BOOL_CAST = 305;
|
|
public const T_UNSET_CAST = 306;
|
|
public const T_POW = 307;
|
|
public const T_NEW = 308;
|
|
public const T_CLONE = 309;
|
|
public const T_EXIT = 310;
|
|
public const T_IF = 311;
|
|
public const T_ELSEIF = 312;
|
|
public const T_ELSE = 313;
|
|
public const T_ENDIF = 314;
|
|
public const T_LNUMBER = 315;
|
|
public const T_DNUMBER = 316;
|
|
public const T_STRING = 317;
|
|
public const T_STRING_VARNAME = 318;
|
|
public const T_VARIABLE = 319;
|
|
public const T_NUM_STRING = 320;
|
|
public const T_INLINE_HTML = 321;
|
|
public const T_ENCAPSED_AND_WHITESPACE = 322;
|
|
public const T_CONSTANT_ENCAPSED_STRING = 323;
|
|
public const T_ECHO = 324;
|
|
public const T_DO = 325;
|
|
public const T_WHILE = 326;
|
|
public const T_ENDWHILE = 327;
|
|
public const T_FOR = 328;
|
|
public const T_ENDFOR = 329;
|
|
public const T_FOREACH = 330;
|
|
public const T_ENDFOREACH = 331;
|
|
public const T_DECLARE = 332;
|
|
public const T_ENDDECLARE = 333;
|
|
public const T_AS = 334;
|
|
public const T_SWITCH = 335;
|
|
public const T_MATCH = 336;
|
|
public const T_ENDSWITCH = 337;
|
|
public const T_CASE = 338;
|
|
public const T_DEFAULT = 339;
|
|
public const T_BREAK = 340;
|
|
public const T_CONTINUE = 341;
|
|
public const T_GOTO = 342;
|
|
public const T_FUNCTION = 343;
|
|
public const T_FN = 344;
|
|
public const T_CONST = 345;
|
|
public const T_RETURN = 346;
|
|
public const T_TRY = 347;
|
|
public const T_CATCH = 348;
|
|
public const T_FINALLY = 349;
|
|
public const T_USE = 350;
|
|
public const T_INSTEADOF = 351;
|
|
public const T_GLOBAL = 352;
|
|
public const T_STATIC = 353;
|
|
public const T_ABSTRACT = 354;
|
|
public const T_FINAL = 355;
|
|
public const T_PRIVATE = 356;
|
|
public const T_PROTECTED = 357;
|
|
public const T_PUBLIC = 358;
|
|
public const T_READONLY = 359;
|
|
public const T_VAR = 360;
|
|
public const T_UNSET = 361;
|
|
public const T_ISSET = 362;
|
|
public const T_EMPTY = 363;
|
|
public const T_HALT_COMPILER = 364;
|
|
public const T_CLASS = 365;
|
|
public const T_TRAIT = 366;
|
|
public const T_INTERFACE = 367;
|
|
public const T_ENUM = 368;
|
|
public const T_EXTENDS = 369;
|
|
public const T_IMPLEMENTS = 370;
|
|
public const T_OBJECT_OPERATOR = 371;
|
|
public const T_NULLSAFE_OBJECT_OPERATOR = 372;
|
|
public const T_LIST = 373;
|
|
public const T_ARRAY = 374;
|
|
public const T_CALLABLE = 375;
|
|
public const T_CLASS_C = 376;
|
|
public const T_TRAIT_C = 377;
|
|
public const T_METHOD_C = 378;
|
|
public const T_FUNC_C = 379;
|
|
public const T_LINE = 380;
|
|
public const T_FILE = 381;
|
|
public const T_START_HEREDOC = 382;
|
|
public const T_END_HEREDOC = 383;
|
|
public const T_DOLLAR_OPEN_CURLY_BRACES = 384;
|
|
public const T_CURLY_OPEN = 385;
|
|
public const T_PAAMAYIM_NEKUDOTAYIM = 386;
|
|
public const T_NAMESPACE = 387;
|
|
public const T_NS_C = 388;
|
|
public const T_DIR = 389;
|
|
public const T_NS_SEPARATOR = 390;
|
|
public const T_ELLIPSIS = 391;
|
|
public const T_NAME_FULLY_QUALIFIED = 392;
|
|
public const T_NAME_QUALIFIED = 393;
|
|
public const T_NAME_RELATIVE = 394;
|
|
public const T_ATTRIBUTE = 395;
|
|
|
|
protected int $tokenToSymbolMapSize = 396;
|
|
protected int $actionTableSize = 1260;
|
|
protected int $gotoTableSize = 656;
|
|
|
|
protected int $invalidSymbol = 168;
|
|
protected int $errorSymbol = 1;
|
|
protected int $defaultAction = -32766;
|
|
protected int $unexpectedTokenRule = 32767;
|
|
|
|
protected int $YY2TBLSTATE = 434;
|
|
protected int $numNonLeafStates = 739;
|
|
|
|
protected array $symbolToName = array(
|
|
"EOF",
|
|
"error",
|
|
"T_THROW",
|
|
"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_EQUAL",
|
|
"'?'",
|
|
"':'",
|
|
"T_COALESCE",
|
|
"T_BOOLEAN_OR",
|
|
"T_BOOLEAN_AND",
|
|
"'|'",
|
|
"'^'",
|
|
"T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG",
|
|
"T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG",
|
|
"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_MATCH",
|
|
"T_ENDSWITCH",
|
|
"T_CASE",
|
|
"T_DEFAULT",
|
|
"T_BREAK",
|
|
"T_CONTINUE",
|
|
"T_GOTO",
|
|
"T_FUNCTION",
|
|
"T_FN",
|
|
"T_CONST",
|
|
"T_RETURN",
|
|
"T_TRY",
|
|
"T_CATCH",
|
|
"T_FINALLY",
|
|
"T_USE",
|
|
"T_INSTEADOF",
|
|
"T_GLOBAL",
|
|
"T_STATIC",
|
|
"T_ABSTRACT",
|
|
"T_FINAL",
|
|
"T_PRIVATE",
|
|
"T_PROTECTED",
|
|
"T_PUBLIC",
|
|
"T_READONLY",
|
|
"T_VAR",
|
|
"T_UNSET",
|
|
"T_ISSET",
|
|
"T_EMPTY",
|
|
"T_HALT_COMPILER",
|
|
"T_CLASS",
|
|
"T_TRAIT",
|
|
"T_INTERFACE",
|
|
"T_ENUM",
|
|
"T_EXTENDS",
|
|
"T_IMPLEMENTS",
|
|
"T_OBJECT_OPERATOR",
|
|
"T_NULLSAFE_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",
|
|
"T_NAME_FULLY_QUALIFIED",
|
|
"T_NAME_QUALIFIED",
|
|
"T_NAME_RELATIVE",
|
|
"T_ATTRIBUTE",
|
|
"';'",
|
|
"']'",
|
|
"'('",
|
|
"')'",
|
|
"'{'",
|
|
"'}'",
|
|
"'`'",
|
|
"'\"'",
|
|
"'$'"
|
|
);
|
|
|
|
protected array $tokenToSymbol = array(
|
|
0, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 56, 166, 168, 167, 55, 168, 168,
|
|
161, 162, 53, 51, 8, 52, 48, 54, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 31, 159,
|
|
44, 16, 46, 30, 68, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 70, 168, 160, 36, 168, 165, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 163, 35, 164, 58, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 168, 168, 1, 2, 3, 4,
|
|
5, 6, 7, 9, 10, 11, 12, 13, 14, 15,
|
|
17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
|
|
27, 28, 29, 32, 33, 34, 37, 38, 39, 40,
|
|
41, 42, 43, 45, 47, 49, 50, 57, 59, 60,
|
|
61, 62, 63, 64, 65, 66, 67, 69, 71, 72,
|
|
73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
|
|
83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
|
|
93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
|
|
103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
|
|
113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
|
|
123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
|
|
133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
|
|
143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
|
|
153, 154, 155, 156, 157, 158
|
|
);
|
|
|
|
protected array $action = array(
|
|
133, 134, 135, 582, 136, 137, 0, 751, 752, 753,
|
|
138, 38, 327,-32766,-32766,-32766,-32766,-32766,-32766, 837,
|
|
826,-32767,-32767,-32767,-32767, 102, 103, 104, 1111, 1112,
|
|
1113, 1110, 1109, 1108, 1114, 745, 744,-32766, 1026,-32766,
|
|
-32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767,
|
|
-32767, 1244,-32766,-32766, 1321, 754, 1111, 1112, 1113, 1110,
|
|
1109, 1108, 1114, 458, 459, 460, 2, 989, 1305, 265,
|
|
139, 403, 758, 759, 760, 761, 466, 467, 428, 835,
|
|
606, -16, 1340, 23, 292, 815, 762, 763, 764, 765,
|
|
766, 767, 768, 769, 770, 771, 791, 583, 792, 793,
|
|
794, 795, 783, 784, 344, 345, 786, 787, 772, 773,
|
|
774, 776, 777, 778, 355, 818, 819, 820, 821, 822,
|
|
584, 779, 780, 585, 586, 940, 803, 801, 802, 814,
|
|
798, 799, 835, 826, 587, 588, 797, 589, 590, 591,
|
|
592, 593, 594, -327, 36, 251, 35, -193, 800, 595,
|
|
596, -192, 140, -85, 133, 134, 135, 582, 136, 137,
|
|
1059, 751, 752, 753, 138, 38, 129, -110, -110, -584,
|
|
-32766, -584, -110,-32766,-32766,-32766, 241, 836, -110, 145,
|
|
958, 959,-32766,-32766,-32766, 960, -593,-32766, 481, 745,
|
|
744, 954, 1035, -593,-32766, 990,-32766,-32766,-32766,-32766,
|
|
-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766, 299, 754,
|
|
831, 75,-32766,-32766,-32766, 291, 142, 326, 242, -85,
|
|
326, 381, 380, 265, 139, 403, 758, 759, 760, 761,
|
|
82, 422, 428,-32766, 326,-32766,-32766,-32766,-32766, 815,
|
|
762, 763, 764, 765, 766, 767, 768, 769, 770, 771,
|
|
791, 583, 792, 793, 794, 795, 783, 784, 344, 345,
|
|
786, 787, 772, 773, 774, 776, 777, 778, 355, 818,
|
|
819, 820, 821, 822, 584, 779, 780, 585, 586, 254,
|
|
803, 801, 802, 814, 798, 799, 832, 725, 587, 588,
|
|
797, 589, 590, 591, 592, 593, 594, -327, 83, 84,
|
|
85, -193, 800, 595, 596, -192, 149, 775, 746, 747,
|
|
748, 749, 750, 151, 751, 752, 753, 788, 789, 37,
|
|
482, 86, 87, 88, 89, 90, 91, 92, 93, 94,
|
|
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
|
|
105, 106, 107, 108, 109, -593, 274, -593,-32766,-32766,
|
|
-32766,-32766,-32766,-32766, 310, 1088, 127, 312, 110, 737,
|
|
1325, 21, 754,-32766,-32766,-32766, -271, 1324,-32766,-32766,
|
|
1087,-32766,-32766,-32766,-32766,-32766, 755, 756, 757, 758,
|
|
759, 760, 761, 1103,-32766, 824,-32766,-32766, -544, 428,
|
|
1035, 323, 815, 762, 763, 764, 765, 766, 767, 768,
|
|
769, 770, 771, 791, 813, 792, 793, 794, 795, 783,
|
|
784, 785, 812, 786, 787, 772, 773, 774, 776, 777,
|
|
778, 817, 818, 819, 820, 821, 822, 823, 779, 780,
|
|
781, 782, 1032, 803, 801, 802, 814, 798, 799, 745,
|
|
744, 790, 796, 797, 804, 805, 807, 806, 808, 809,
|
|
152,-32766, -544, -544, 1035, 800, 811, 810, 50, 51,
|
|
52, 512, 53, 54, 1239, 1238, 1240, -544, 55, 56,
|
|
-110, 57,-32766, 1089, 920, -110, 555, -110, 292, -550,
|
|
339, -544, 306, 103, 104, -110, -110, -110, -110, -110,
|
|
-110, -110, -110, 105, 106, 107, 108, 109, 1244, 274,
|
|
379, 380, -590, -366, 715, -366, 340, 58, 59, -590,
|
|
422, 110, 60, 369, 61, 248, 249, 62, 63, 64,
|
|
65, 66, 67, 68, 69, -543, 28, 267, 70, 444,
|
|
513,-32766, 373, -341, 1271, 1272, 514, 1277, 835, 862,
|
|
388, 863, 1269, 42, 25, 515, 942, 516, 942, 517,
|
|
920, 518, 299, 1035, 519, 520, 1265, 910, 440, 44,
|
|
45, 445, 376, 375,-32766, 46, 521, 1022, 1021, 1020,
|
|
1023, 367, 338, 390, 1237, 7, 291, 441, 1230, 835,
|
|
523, 524, 525, 442, 1244, 356, 1035, 361, 834, -543,
|
|
-543, 154, 527, 528, 443, 1258, 1259, 1260, 1261, 1255,
|
|
1256, 298,-32766,-32766, -543, -547, 1058, 1262, 1257, 291,
|
|
1235, 1239, 1238, 1240, 299, 841, -549, 71, -543, 656,
|
|
26, 321, 322, 326, -153, -153, -153, 920, 612, 675,
|
|
676, 1034, 922, 910,-32766, 286, 710, 835, 155, -153,
|
|
828, -153, 862, -153, 863, -153, 150, 406, 156, 1239,
|
|
1238, 1240,-32766,-32766,-32766, 374, 1350, 716, 75, 1351,
|
|
158, -590, 33, -590, 326, 835, 958, 959, -78, -547,
|
|
-547, 522, 920,-32766, 377, 378, 896, 954, -110, -110,
|
|
-110, 32, 111, 112, 113, 114, 115, 116, 117, 118,
|
|
119, 120, 121, 122, 123, 745, 744, -58, -547, -57,
|
|
-110, -110, 717, 745, 744, -110, 382, 383, 922, 1032,
|
|
910, -110, 710, -153, 647, 648, 830, 124, 141, 125,
|
|
-32766, 1032, 326, 712, 1149, 1151, 48, 130, 131, 144,
|
|
159, 1035,-32766, 160, 161, -542, 28, 162, 1237, 920,
|
|
163, 299, 920, 1035, 75,-32766,-32766,-32766, 835,-32766,
|
|
326,-32766, 1269,-32766, 282, 910,-32766, -87, -84, -78,
|
|
-73,-32766,-32766,-32766, -4, 920, 282,-32766,-32766, 720,
|
|
-72, -71, 727,-32766, 419, -70, -69, -68, -67, -66,
|
|
287, 286,-32766, -65, -46, 922, 745, 744, 1230, 710,
|
|
300, 301, -545, -18, 148, -301, 273, 283, 726, -542,
|
|
-542, 729, 527, 528, 920, 1258, 1259, 1260, 1261, 1255,
|
|
1256, 919, 74, 147, -542, 288, 293, 1262, 1257, 126,
|
|
-297, 280, 910,-32766, 281, 910, 284, 73, -542, 1237,
|
|
975, 690, 322, 326, 710, 285,-32766,-32766,-32766, 332,
|
|
-32766, 274,-32766, 294,-32766, 936, 110,-32766, 910, 685,
|
|
835, -542,-32766,-32766,-32766, 826, -545, -545,-32766,-32766,
|
|
146,-32766, -50, 701,-32766, 419, 703, 691, 20, 1118,
|
|
374, -545, 435,-32766, 645, 1352, 1276, 297, 557,-32766,
|
|
1278, 958, 959, 561, 662, -545, 522, 910, 692, 693,
|
|
678, 526, 954, -110, -110, -110, 132, 922, 657, 463,
|
|
922, 710, 492, -507, 710,-32766, 1239, 1238, 1240, 663,
|
|
679, 1237, 282, 307, 10, -542, -542, 299,-32766,-32766,
|
|
-32766, 34,-32766, 922,-32766, 955,-32766, 710, -4,-32766,
|
|
-542, 305, 40, 304,-32766,-32766,-32766, 0, 0,-32766,
|
|
-32766,-32766, 920, 311, -542, 1237,-32766, 419, 567, 0,
|
|
0, 0,-32766,-32766,-32766,-32766,-32766, 0,-32766, 0,
|
|
-32766, -497, 922,-32766, 8, 24, 710, 371,-32766,-32766,
|
|
-32766,-32766, 610, 41,-32766,-32766, 938, 1237, 834, 734,
|
|
-32766, 419, 920, 735,-32766,-32766,-32766, 854,-32766,-32766,
|
|
-32766, 901,-32766, 999, 976,-32766, 49, 983, 973, 487,
|
|
-32766,-32766,-32766,-32766, 984, 899,-32766,-32766, 971, 1237,
|
|
574, 1092,-32766, 419, 1095, 1096,-32766,-32766,-32766, 1093,
|
|
-32766,-32766,-32766, 1094,-32766, 910, 1100,-32766, 1266, 846,
|
|
1291, 1309,-32766,-32766,-32766, 1343, 650, 320,-32766,-32766,
|
|
-578, -249, -249, -249,-32766, 419, -577, 374, -576, -550,
|
|
28, 267, -549,-32766, -548, -491, 1, 29, 958, 959,
|
|
302, 303, 835, 522, 30, 910, 1269, 39, 896, 954,
|
|
-110, -110, -110, 43, 47, 372, 72, 76, 77, 78,
|
|
79, -248, -248, -248, 80, 81, 143, 374, 153, 128,
|
|
-274, 157, 247, 328, 356, 357, 358, 359, 958, 959,
|
|
922, 360, 1230, 522, 710, -249, 361, 362, 896, 954,
|
|
-110, -110, -110, 363, 364, 365, 366, 528, 28, 1258,
|
|
1259, 1260, 1261, 1255, 1256, 368, 436, 554, -511, -272,
|
|
835, 1262, 1257, -271, 1269, 13,-32766, 14, 15, 16,
|
|
922, 73, 1237, 731, 710, -248, 322, 326, 18,-32766,
|
|
-32766,-32766, 405,-32766, 483,-32766, 484,-32766, 491, 494,
|
|
-32766, 495, 496, 497, 501,-32766,-32766,-32766, 502, 503,
|
|
1230,-32766,-32766, 510, 572, 696, 1248,-32766, 419, 1189,
|
|
1267, 1061, 1060, 1041, 1225, 528,-32766, 1258, 1259, 1260,
|
|
1261, 1255, 1256, 1037, -276, -102, 12, 17, 27, 1262,
|
|
1257, 296, 404, 603, 607, 636, 702, 1193, 1243, 73,
|
|
370, 1190, 1322, 0, 322, 326, 711, 714, 718, 719,
|
|
721, 722, 723, 724, 728, 0, 713, 0, 897, 1347,
|
|
1349, 857, 856, 865, 948, 991, 864, 1348, 947, 945,
|
|
946, 949, 1221, 929, 939, 927, 981, 982, 634, 1346,
|
|
1303, 1292, 1310, 1319, 0, 1206, 0, 1270, 0, 326
|
|
);
|
|
|
|
protected array $actionCheck = array(
|
|
2, 3, 4, 5, 6, 7, 0, 9, 10, 11,
|
|
12, 13, 70, 9, 10, 11, 9, 10, 11, 1,
|
|
80, 44, 45, 46, 47, 48, 49, 50, 116, 117,
|
|
118, 119, 120, 121, 122, 37, 38, 30, 1, 32,
|
|
33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
|
|
43, 1, 9, 10, 1, 57, 116, 117, 118, 119,
|
|
120, 121, 122, 129, 130, 131, 8, 31, 1, 71,
|
|
72, 73, 74, 75, 76, 77, 134, 135, 80, 82,
|
|
1, 31, 85, 8, 30, 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, 1, 128, 129, 130, 131,
|
|
132, 133, 82, 80, 136, 137, 138, 139, 140, 141,
|
|
142, 143, 144, 8, 147, 148, 8, 8, 150, 151,
|
|
152, 8, 154, 31, 2, 3, 4, 5, 6, 7,
|
|
162, 9, 10, 11, 12, 13, 8, 117, 118, 160,
|
|
116, 162, 122, 9, 10, 11, 97, 159, 128, 8,
|
|
117, 118, 9, 10, 11, 122, 1, 137, 31, 37,
|
|
38, 128, 138, 8, 30, 159, 32, 33, 34, 35,
|
|
36, 37, 38, 30, 9, 32, 33, 34, 158, 57,
|
|
80, 161, 9, 10, 11, 161, 163, 167, 14, 97,
|
|
167, 106, 107, 71, 72, 73, 74, 75, 76, 77,
|
|
163, 116, 80, 30, 167, 32, 33, 34, 35, 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, 8,
|
|
128, 129, 130, 131, 132, 133, 156, 163, 136, 137,
|
|
138, 139, 140, 141, 142, 143, 144, 162, 9, 10,
|
|
11, 162, 150, 151, 152, 162, 154, 2, 3, 4,
|
|
5, 6, 7, 14, 9, 10, 11, 12, 13, 30,
|
|
163, 32, 33, 34, 35, 36, 37, 38, 39, 40,
|
|
41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
|
|
51, 52, 53, 54, 55, 160, 57, 162, 9, 10,
|
|
11, 9, 10, 11, 8, 159, 14, 8, 69, 163,
|
|
1, 101, 57, 9, 10, 11, 162, 8, 116, 30,
|
|
1, 32, 33, 34, 35, 36, 71, 72, 73, 74,
|
|
75, 76, 77, 123, 30, 80, 32, 33, 70, 80,
|
|
138, 8, 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, 116, 128, 129, 130, 131, 132, 133, 37,
|
|
38, 136, 137, 138, 139, 140, 141, 142, 143, 144,
|
|
14, 116, 134, 135, 138, 150, 151, 152, 2, 3,
|
|
4, 5, 6, 7, 155, 156, 157, 149, 12, 13,
|
|
101, 15, 137, 164, 1, 106, 85, 108, 30, 161,
|
|
8, 163, 113, 49, 50, 116, 117, 118, 119, 120,
|
|
121, 122, 123, 51, 52, 53, 54, 55, 1, 57,
|
|
106, 107, 1, 106, 31, 108, 8, 51, 52, 8,
|
|
116, 69, 56, 8, 58, 59, 60, 61, 62, 63,
|
|
64, 65, 66, 67, 68, 70, 70, 71, 72, 73,
|
|
74, 116, 8, 164, 78, 79, 80, 146, 82, 106,
|
|
8, 108, 86, 87, 88, 89, 122, 91, 122, 93,
|
|
1, 95, 158, 138, 98, 99, 1, 84, 8, 103,
|
|
104, 105, 106, 107, 116, 109, 110, 119, 120, 121,
|
|
122, 115, 116, 106, 80, 108, 161, 8, 122, 82,
|
|
124, 125, 126, 8, 1, 161, 138, 161, 155, 134,
|
|
135, 14, 136, 137, 8, 139, 140, 141, 142, 143,
|
|
144, 145, 51, 52, 149, 70, 1, 151, 152, 161,
|
|
116, 155, 156, 157, 158, 8, 161, 161, 163, 75,
|
|
76, 165, 166, 167, 75, 76, 77, 1, 52, 75,
|
|
76, 137, 159, 84, 137, 30, 163, 82, 14, 90,
|
|
80, 92, 106, 94, 108, 96, 101, 102, 14, 155,
|
|
156, 157, 9, 10, 11, 106, 80, 31, 161, 83,
|
|
14, 160, 14, 162, 167, 82, 117, 118, 16, 134,
|
|
135, 122, 1, 30, 106, 107, 127, 128, 129, 130,
|
|
131, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
|
25, 26, 27, 28, 29, 37, 38, 16, 163, 16,
|
|
117, 118, 31, 37, 38, 122, 106, 107, 159, 116,
|
|
84, 128, 163, 164, 111, 112, 156, 16, 163, 16,
|
|
137, 116, 167, 163, 59, 60, 70, 16, 16, 16,
|
|
16, 138, 74, 16, 16, 70, 70, 16, 80, 1,
|
|
16, 158, 1, 138, 161, 87, 88, 89, 82, 91,
|
|
167, 93, 86, 95, 161, 84, 98, 31, 31, 31,
|
|
31, 103, 104, 105, 0, 1, 161, 109, 110, 31,
|
|
31, 31, 31, 115, 116, 31, 31, 31, 31, 31,
|
|
37, 30, 124, 31, 31, 159, 37, 38, 122, 163,
|
|
134, 135, 70, 31, 31, 35, 31, 31, 31, 134,
|
|
135, 31, 136, 137, 1, 139, 140, 141, 142, 143,
|
|
144, 31, 154, 31, 149, 37, 37, 151, 152, 163,
|
|
35, 35, 84, 74, 35, 84, 35, 161, 163, 80,
|
|
159, 80, 166, 167, 163, 35, 87, 88, 89, 35,
|
|
91, 57, 93, 37, 95, 38, 69, 98, 84, 77,
|
|
82, 70, 103, 104, 105, 80, 134, 135, 109, 110,
|
|
70, 85, 31, 80, 115, 116, 92, 116, 97, 82,
|
|
106, 149, 108, 124, 113, 83, 146, 113, 85, 137,
|
|
146, 117, 118, 89, 96, 163, 122, 84, 137, 138,
|
|
94, 127, 128, 129, 130, 131, 31, 159, 90, 97,
|
|
159, 163, 97, 149, 163, 74, 155, 156, 157, 100,
|
|
100, 80, 161, 114, 150, 134, 135, 158, 87, 88,
|
|
89, 163, 91, 159, 93, 128, 95, 163, 164, 98,
|
|
149, 133, 159, 132, 103, 104, 105, -1, -1, 74,
|
|
109, 110, 1, 132, 163, 80, 115, 116, 153, -1,
|
|
-1, -1, 87, 88, 89, 124, 91, -1, 93, -1,
|
|
95, 149, 159, 98, 149, 149, 163, 149, 103, 104,
|
|
105, 74, 153, 159, 109, 110, 154, 80, 155, 159,
|
|
115, 116, 1, 159, 87, 88, 89, 159, 91, 124,
|
|
93, 159, 95, 159, 159, 98, 70, 159, 159, 102,
|
|
103, 104, 105, 74, 159, 159, 109, 110, 159, 80,
|
|
81, 159, 115, 116, 159, 159, 87, 88, 89, 159,
|
|
91, 124, 93, 159, 95, 84, 159, 98, 160, 160,
|
|
160, 160, 103, 104, 105, 160, 160, 163, 109, 110,
|
|
161, 100, 101, 102, 115, 116, 161, 106, 161, 161,
|
|
70, 71, 161, 124, 161, 161, 161, 161, 117, 118,
|
|
134, 135, 82, 122, 161, 84, 86, 161, 127, 128,
|
|
129, 130, 131, 161, 161, 149, 161, 161, 161, 161,
|
|
161, 100, 101, 102, 161, 161, 161, 106, 161, 163,
|
|
162, 161, 161, 161, 161, 161, 161, 161, 117, 118,
|
|
159, 161, 122, 122, 163, 164, 161, 161, 127, 128,
|
|
129, 130, 131, 161, 161, 161, 161, 137, 70, 139,
|
|
140, 141, 142, 143, 144, 161, 161, 161, 165, 162,
|
|
82, 151, 152, 162, 86, 162, 74, 162, 162, 162,
|
|
159, 161, 80, 164, 163, 164, 166, 167, 162, 87,
|
|
88, 89, 162, 91, 162, 93, 162, 95, 162, 162,
|
|
98, 162, 162, 162, 162, 103, 104, 105, 162, 162,
|
|
122, 109, 110, 162, 162, 162, 162, 115, 116, 162,
|
|
162, 162, 162, 162, 162, 137, 124, 139, 140, 141,
|
|
142, 143, 144, 162, 162, 162, 162, 162, 162, 151,
|
|
152, 162, 162, 162, 162, 162, 162, 162, 162, 161,
|
|
163, 162, 162, -1, 166, 167, 163, 163, 163, 163,
|
|
163, 163, 163, 163, 163, -1, 163, -1, 164, 164,
|
|
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
|
|
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
|
|
164, 164, 164, 164, -1, 165, -1, 166, -1, 167
|
|
);
|
|
|
|
protected array $actionBase = array(
|
|
0, -2, 152, 549, 764, 941, 981, 751, 555, 309,
|
|
560, 864, 626, 738, 738, 741, 738, 473, 671, 783,
|
|
-60, 305, 305, 783, 305, 803, 803, 803, 658, 658,
|
|
658, 658, 749, 749, 897, 897, 929, 865, 831, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062,
|
|
1062, 1062, 1062, 1062, 18, 36, 79, 648, 1039, 1045,
|
|
1041, 1046, 1035, 1034, 1040, 1042, 1049, 1085, 1086, 782,
|
|
1087, 1088, 1084, 1089, 1043, 876, 1036, 1044, 289, 289,
|
|
289, 289, 289, 289, 289, 289, 289, 289, 289, 289,
|
|
289, 289, 289, 289, 289, 289, 289, 289, 289, 289,
|
|
289, 289, 289, 289, 289, 195, 342, 43, 4, 4,
|
|
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
|
4, 4, 4, 4, 4, 4, 4, 4, 643, 643,
|
|
643, 666, 666, 354, 173, 980, 203, 1048, 1048, 1048,
|
|
1048, 1048, 1048, 1048, 1048, 1048, 665, 339, 164, 164,
|
|
7, 7, 7, 7, 7, 50, 369, 583, -23, -23,
|
|
-23, -23, 448, 605, 497, 260, 397, 434, 54, 394,
|
|
593, 593, 316, 316, 415, 415, 316, 316, 316, 442,
|
|
442, 252, 252, 252, 252, 318, 455, 433, 391, 742,
|
|
53, 53, 53, 53, 742, 742, 742, 742, 734, 1091,
|
|
742, 742, 742, 722, 781, 781, 926, 551, 551, 781,
|
|
536, 793, -3, 536, 63, -3, 67, 576, 335, 797,
|
|
115, 9, 335, 535, 656, 501, 185, 823, 568, 823,
|
|
1033, 424, 776, 426, 753, 729, 867, 1063, 1050, 809,
|
|
1082, 810, 1083, -66, -58, 728, 1032, 1032, 1032, 1032,
|
|
1032, 1032, 1032, 1032, 1032, 1032, 1032, 1092, 402, 1033,
|
|
130, 1092, 1092, 1092, 402, 402, 402, 402, 402, 402,
|
|
402, 402, 402, 402, 603, 130, 544, 554, 130, 804,
|
|
402, 18, 812, 18, 18, 18, 18, 18, 18, 18,
|
|
18, 18, 18, 762, 157, 18, 36, 124, 124, 196,
|
|
37, 124, 124, 124, 124, 18, 18, 18, 18, 568,
|
|
784, 795, 600, 819, 143, 784, 784, 784, 122, 135,
|
|
204, 139, 760, 785, 467, 775, 775, 787, 895, 895,
|
|
775, 768, 775, 787, 913, 775, 775, 895, 895, 759,
|
|
158, 550, 472, 524, 569, 895, 346, 775, 775, 775,
|
|
775, 811, 575, 775, 271, 171, 775, 775, 811, 801,
|
|
766, 58, 798, 895, 895, 895, 811, 505, 798, 798,
|
|
798, 820, 824, 761, 765, 383, 349, 607, 138, 807,
|
|
765, 765, 775, 532, 761, 765, 761, 765, 822, 765,
|
|
765, 765, 761, 765, 768, 498, 765, 714, 586, 75,
|
|
765, 6, 915, 916, 726, 917, 906, 918, 965, 919,
|
|
923, 1053, 894, 931, 912, 924, 966, 903, 896, 780,
|
|
701, 703, 815, 754, 893, 777, 777, 777, 888, 777,
|
|
777, 777, 777, 777, 777, 777, 777, 701, 868, 818,
|
|
794, 934, 711, 712, 1012, 730, 1064, 963, 1090, 933,
|
|
1014, 925, 773, 713, 986, 935, 979, 874, 936, 940,
|
|
990, 1017, 828, 1018, 1065, 790, 1066, 1067, 869, 946,
|
|
1054, 777, 915, 923, 727, 912, 924, 903, 896, 752,
|
|
748, 746, 747, 745, 744, 739, 740, 763, 1019, 887,
|
|
879, 870, 945, 891, 701, 871, 973, 758, 992, 994,
|
|
1047, 802, 792, 875, 1068, 952, 953, 954, 1055, 1020,
|
|
1056, 814, 975, 928, 996, 805, 1069, 997, 999, 1000,
|
|
1001, 1057, 1070, 1058, 885, 1059, 832, 808, 967, 788,
|
|
1071, 299, 791, 800, 806, 964, 436, 932, 1060, 1072,
|
|
1073, 1002, 1006, 1007, 1074, 1075, 927, 834, 976, 796,
|
|
977, 971, 835, 838, 577, 779, 1021, 786, 789, 778,
|
|
624, 634, 1076, 1077, 1078, 930, 767, 772, 839, 845,
|
|
1022, 743, 1031, 1079, 646, 846, 717, 1080, 1013, 718,
|
|
721, 652, 683, 681, 724, 774, 1061, 816, 799, 771,
|
|
955, 721, 770, 849, 1081, 852, 855, 856, 1011, 860,
|
|
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,
|
|
456, 456, 456, 456, 456, 456, 305, 305, 305, 305,
|
|
305, 456, 456, 456, 456, 456, 456, 456, 305, 305,
|
|
0, 0, 305, 0, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 456, 456, 456, 456, 456, 456, 456,
|
|
456, 456, 456, 289, 289, 289, 289, 289, 289, 289,
|
|
289, 289, 289, 289, 289, 289, 289, 289, 289, 289,
|
|
289, 289, 289, 289, 289, 289, 289, 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, 289, 289, 289, 289, 289, 289,
|
|
289, 289, 289, 289, 289, 289, 289, 289, 289, 289,
|
|
289, 289, 289, 289, 289, 289, 289, 289, 289, 289,
|
|
494, 494, 289, 289, 494, 289, 494, 494, 494, 494,
|
|
494, 494, 494, 494, 494, 0, 289, 289, 289, 289,
|
|
289, 289, 289, 289, 494, 759, 494, 442, 442, 442,
|
|
442, 494, 494, 494, -88, -88, 442, 494, 63, 494,
|
|
494, 494, 494, 494, 494, 494, 494, 494, 0, 0,
|
|
494, 494, 494, 494, 0, 0, 130, -3, 494, 768,
|
|
768, 768, 768, 494, 494, 494, 494, -3, -3, 494,
|
|
494, 494, 0, 0, 0, 0, 442, 442, 0, 130,
|
|
-3, 0, 130, 0, 0, 768, 768, 494, 63, 759,
|
|
359, 494, 0, 0, 0, 0, 130, 768, 130, 402,
|
|
775, -3, 775, 402, 402, 124, 18, 359, 545, 545,
|
|
545, 545, 0, 0, 568, 759, 759, 759, 759, 759,
|
|
759, 759, 759, 759, 759, 759, 768, 0, 759, 0,
|
|
768, 768, 768, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 768, 0,
|
|
0, 895, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 913, 0, 0, 0, 0, 0, 0, 768,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 777,
|
|
802, 0, 802, 0, 777, 777, 777, 0, 0, 0,
|
|
0, 779, 743
|
|
);
|
|
|
|
protected array $actionDefault = array(
|
|
3,32767, 102,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767, 100,32767,32767,32767,32767, 596, 596,
|
|
596, 596,32767,32767, 253, 102,32767,32767, 469, 386,
|
|
386, 386,32767,32767, 540, 540, 540, 540, 540, 540,
|
|
32767,32767,32767,32767,32767,32767, 469,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767, 100,
|
|
32767,32767,32767, 36, 7, 8, 10, 11, 49, 17,
|
|
323,32767,32767,32767,32767, 102,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767, 589,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767, 473, 452,
|
|
453, 455, 456, 385, 541, 595, 326, 592, 384, 145,
|
|
338, 328, 241, 329, 257, 474, 258, 475, 478, 479,
|
|
214, 286, 381, 149, 150, 416, 470, 418, 468, 472,
|
|
417, 391, 397, 398, 399, 400, 401, 402, 403, 404,
|
|
405, 406, 407, 408, 409, 389, 390, 471, 449, 448,
|
|
447,32767,32767, 414, 415,32767, 419,32767,32767,32767,
|
|
32767,32767,32767,32767, 102,32767, 388, 422, 420, 421,
|
|
438, 439, 436, 437, 440,32767,32767,32767, 441, 442,
|
|
443, 444, 315,32767,32767, 365, 363, 423, 315, 111,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767, 429,
|
|
430,32767,32767,32767,32767, 534, 446,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
102,32767, 100, 536, 411, 413, 503, 424, 425, 392,
|
|
32767, 510,32767, 102,32767, 512,32767,32767,32767,32767,
|
|
32767,32767,32767, 535,32767, 542, 542,32767, 496, 100,
|
|
194,32767,32767,32767, 194, 194,32767,32767,32767,32767,
|
|
32767,32767,32767,32767, 603, 496, 110, 110, 110, 110,
|
|
110, 110, 110, 110, 110, 110, 110,32767, 194, 110,
|
|
32767,32767,32767, 100, 194, 194, 194, 194, 194, 194,
|
|
194, 194, 194, 194, 189,32767, 267, 269, 102, 557,
|
|
194,32767, 515,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767, 508,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767, 496,
|
|
434, 138,32767, 138, 542, 426, 427, 428, 498, 542,
|
|
542, 542, 311, 288,32767,32767,32767,32767, 513, 513,
|
|
100, 100, 100, 100, 508,32767,32767,32767,32767, 111,
|
|
99, 99, 99, 99, 99, 103, 101,32767,32767,32767,
|
|
32767, 222, 99,32767, 101, 101,32767,32767, 222, 224,
|
|
211, 101, 226,32767, 561, 562, 222, 101, 226, 226,
|
|
226, 246, 246, 485, 317, 101, 99, 101, 101, 196,
|
|
317, 317,32767, 101, 485, 317, 485, 317, 198, 317,
|
|
317, 317, 485, 317,32767, 101, 317, 213, 99, 99,
|
|
317,32767,32767,32767, 498,32767,32767,32767,32767,32767,
|
|
32767,32767, 221,32767,32767,32767,32767,32767,32767,32767,
|
|
32767, 529,32767, 546, 559, 432, 433, 435, 544, 457,
|
|
458, 459, 460, 461, 462, 463, 465, 591,32767, 502,
|
|
32767,32767,32767, 337,32767, 601,32767, 601,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767, 602,32767, 542,32767,32767,32767,
|
|
32767, 431, 9, 74, 491, 42, 43, 51, 57, 519,
|
|
520, 521, 522, 516, 517, 523, 518,32767,32767, 524,
|
|
567,32767,32767, 543, 594,32767,32767,32767,32767,32767,
|
|
32767, 138,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767, 529,32767, 136,32767,32767,32767,32767,
|
|
32767,32767,32767,32767, 525,32767,32767,32767, 542,32767,
|
|
32767,32767,32767, 313, 310,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767, 542,32767,32767,32767,32767,32767, 290,32767, 307,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
32767,32767,32767,32767,32767,32767, 285,32767,32767, 380,
|
|
498, 293, 295, 296,32767,32767,32767,32767, 359,32767,
|
|
32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,
|
|
152, 152, 3, 3, 340, 152, 152, 152, 340, 340,
|
|
152, 340, 340, 340, 152, 152, 152, 152, 152, 152,
|
|
279, 184, 261, 264, 246, 246, 152, 351, 152
|
|
);
|
|
|
|
protected array $goto = array(
|
|
196, 196, 1033, 1064, 697, 430, 661, 621, 658, 319,
|
|
706, 424, 314, 315, 335, 576, 429, 336, 431, 638,
|
|
654, 655, 852, 672, 673, 674, 853, 167, 167, 167,
|
|
167, 221, 197, 193, 193, 177, 179, 216, 193, 193,
|
|
193, 193, 193, 194, 194, 194, 194, 194, 194, 188,
|
|
189, 190, 191, 192, 218, 216, 219, 535, 536, 420,
|
|
537, 539, 540, 541, 542, 543, 544, 545, 546, 1135,
|
|
168, 169, 170, 195, 171, 172, 173, 166, 174, 175,
|
|
176, 178, 215, 217, 220, 238, 243, 244, 246, 257,
|
|
258, 259, 260, 261, 262, 263, 264, 268, 269, 270,
|
|
271, 277, 289, 290, 317, 318, 425, 426, 427, 581,
|
|
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
|
|
232, 233, 234, 235, 236, 180, 237, 181, 198, 199,
|
|
200, 239, 188, 189, 190, 191, 192, 218, 1135, 201,
|
|
182, 183, 184, 202, 198, 185, 240, 203, 201, 165,
|
|
204, 205, 186, 206, 207, 208, 187, 209, 210, 211,
|
|
212, 213, 214, 855, 478, 279, 279, 279, 279, 623,
|
|
623, 974, 480, 1268, 600, 1268, 1268, 1268, 1268, 1268,
|
|
1268, 1268, 1268, 1268, 1286, 1286, 599, 1099, 1286, 709,
|
|
1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 507,
|
|
700, 418, 1097, 1337, 1337, 559, 551, 860, 827, 909,
|
|
904, 905, 918, 861, 906, 858, 907, 908, 859, 457,
|
|
1337, 912, 353, 353, 353, 353, 395, 398, 560, 601,
|
|
605, 1086, 1081, 1082, 1083, 341, 551, 559, 568, 569,
|
|
343, 579, 602, 616, 617, 407, 408, 913, 868, 914,
|
|
670, 22, 671, 350, 411, 412, 413, 423, 684, 611,
|
|
1236, 414, 1236, 880, 439, 346, 867, 1033, 1033, 1236,
|
|
833, 886, 5, 1033, 6, 1033, 1033, 1033, 1033, 1033,
|
|
1033, 1033, 1033, 1033, 573, 848, 1033, 1033, 1033, 1033,
|
|
1318, 1318, 1318, 1318, 1236, 348, 930, 1122, 1326, 1236,
|
|
1236, 1236, 1236, 619, 995, 1236, 1236, 1236, 393, 1014,
|
|
833, 354, 833, 571, 252, 252, 499, 872, 500, 664,
|
|
993, 354, 354, 925, 506, 866, 660, 926, 475, 1311,
|
|
1312, 941, 1132, 941, 354, 354, 848, 1226, 354, 1057,
|
|
1353, 250, 250, 250, 250, 245, 253, 1184, 549, 437,
|
|
549, 553, 1284, 1284, 682, 354, 1284, 549, 1284, 1284,
|
|
1284, 1284, 1284, 1284, 1284, 1284, 1284, 538, 538, 1336,
|
|
1336, 538, 666, 538, 538, 538, 538, 538, 538, 538,
|
|
538, 538, 455, 966, 409, 705, 1336, 968, 968, 968,
|
|
968, 337, 566, 455, 962, 969, 733, 637, 639, 1106,
|
|
1107, 659, 1297, 1339, 957, 683, 687, 1009, 695, 704,
|
|
1005, 609, 624, 627, 628, 629, 630, 651, 652, 653,
|
|
708, 1039, 1038, 686, 845, 552, 563, 449, 449, 449,
|
|
552, 1308, 563, 1308, 870, 396, 461, 631, 633, 635,
|
|
1308, 547, 547, 547, 547, 873, 604, 468, 580, 469,
|
|
470, 851, 402, 878, 553, 848, 1344, 1345, 1227, 998,
|
|
972, 972, 970, 972, 732, 1017, 1320, 1320, 1320, 1320,
|
|
1042, 1043, 550, 1007, 1002, 325, 309, 881, 869, 1069,
|
|
1073, 432, 876, 615, 324, 275, 324, 432, 977, 1231,
|
|
465, 465, 1304, 1040, 1040, 736, 1313, 1314, 476, 465,
|
|
665, 1051, 1047, 1048, 1070, 351, 352, 1036, 1036, 681,
|
|
951, 1074, 967, 1028, 1044, 1045, 882, 1229, 449, 449,
|
|
449, 449, 449, 449, 449, 449, 449, 449, 449, 577,
|
|
614, 449, 0, 1072, 1115, 885, 1117, 1306, 1306, 1072,
|
|
979, 0, 1215, 943, 1232, 1233, 1216, 1219, 944, 1220,
|
|
694, 0, 843, 829, 255, 255, 0, 0, 0, 0,
|
|
0, 0, 694, 0, 0, 0, 694, 0, 0, 0,
|
|
1234, 1294, 1295, 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, 1012, 1012
|
|
);
|
|
|
|
protected array $gotoCheck = array(
|
|
42, 42, 72, 126, 72, 65, 65, 55, 55, 65,
|
|
9, 65, 65, 65, 65, 65, 65, 65, 65, 65,
|
|
85, 85, 26, 85, 85, 85, 27, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 15, 83, 23, 23, 23, 23, 107,
|
|
107, 49, 83, 107, 129, 107, 107, 107, 107, 107,
|
|
107, 107, 107, 107, 168, 168, 8, 8, 168, 8,
|
|
168, 168, 168, 168, 168, 168, 168, 168, 168, 8,
|
|
8, 43, 8, 181, 181, 75, 75, 15, 6, 15,
|
|
15, 15, 15, 15, 15, 15, 15, 15, 15, 82,
|
|
181, 15, 24, 24, 24, 24, 58, 58, 58, 58,
|
|
58, 15, 15, 15, 15, 75, 75, 75, 75, 75,
|
|
75, 75, 75, 75, 75, 81, 81, 64, 35, 64,
|
|
81, 75, 81, 96, 81, 81, 81, 13, 81, 13,
|
|
72, 81, 72, 35, 82, 81, 35, 72, 72, 72,
|
|
12, 45, 46, 72, 46, 72, 72, 72, 72, 72,
|
|
72, 72, 72, 72, 170, 22, 72, 72, 72, 72,
|
|
9, 9, 9, 9, 72, 177, 17, 17, 179, 72,
|
|
72, 72, 72, 17, 102, 72, 72, 72, 61, 17,
|
|
12, 14, 12, 103, 5, 5, 154, 17, 154, 17,
|
|
17, 14, 14, 72, 154, 17, 63, 72, 174, 174,
|
|
174, 9, 149, 9, 14, 14, 22, 17, 14, 113,
|
|
14, 5, 5, 5, 5, 5, 5, 150, 19, 112,
|
|
19, 14, 169, 169, 115, 14, 169, 19, 169, 169,
|
|
169, 169, 169, 169, 169, 169, 169, 171, 171, 180,
|
|
180, 171, 119, 171, 171, 171, 171, 171, 171, 171,
|
|
171, 171, 19, 92, 92, 92, 180, 19, 19, 19,
|
|
19, 29, 48, 19, 19, 19, 48, 48, 48, 143,
|
|
143, 48, 14, 180, 91, 48, 48, 48, 48, 48,
|
|
48, 80, 80, 80, 80, 80, 80, 80, 80, 80,
|
|
80, 117, 117, 14, 18, 9, 9, 23, 23, 23,
|
|
9, 129, 9, 129, 37, 9, 9, 84, 84, 84,
|
|
129, 106, 106, 106, 106, 39, 106, 9, 9, 9,
|
|
9, 25, 28, 9, 14, 22, 9, 9, 159, 25,
|
|
25, 25, 25, 25, 25, 109, 129, 129, 129, 129,
|
|
118, 118, 25, 25, 25, 167, 167, 16, 16, 16,
|
|
16, 116, 9, 79, 24, 24, 24, 116, 16, 20,
|
|
148, 148, 129, 116, 116, 98, 176, 176, 156, 148,
|
|
116, 116, 116, 116, 128, 96, 96, 88, 88, 88,
|
|
88, 131, 16, 88, 88, 88, 41, 14, 23, 23,
|
|
23, 23, 23, 23, 23, 23, 23, 23, 23, 2,
|
|
2, 23, -1, 129, 16, 16, 146, 129, 129, 129,
|
|
95, -1, 78, 78, 20, 20, 78, 78, 78, 78,
|
|
7, -1, 20, 7, 5, 5, -1, -1, -1, -1,
|
|
-1, -1, 7, -1, -1, -1, 7, -1, -1, -1,
|
|
20, 20, 20, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, 106, 106
|
|
);
|
|
|
|
protected array $gotoBase = array(
|
|
0, 0, -183, 0, 0, 313, 188, 543, 178, -10,
|
|
0, 0, -27, -80, 13, -184, 26, -168, 114, 83,
|
|
97, 0, 6, 162, 219, 447, 18, 22, 115, 94,
|
|
0, 0, 0, 0, 0, -122, 0, 95, 0, 122,
|
|
0, 76, -1, 182, 0, 248, -464, 0, -319, 153,
|
|
0, 0, 0, 0, 0, -33, 0, 0, 181, 0,
|
|
0, 266, 0, 84, 233, -236, 0, 0, 0, 0,
|
|
0, 0, -5, 0, 0, -139, 0, 0, 135, 140,
|
|
54, -245, -60, -304, -41, -698, 0, 0, 227, 0,
|
|
0, 75, 78, 0, 0, 98, -229, 0, 89, 0,
|
|
0, 0, 269, 270, 0, 0, 413, -72, 0, 96,
|
|
0, 0, 71, 66, 0, 72, 209, 141, 186, 81,
|
|
0, 0, 0, 0, 0, 0, 1, 0, 131, 166,
|
|
0, 70, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 124, 0, 0, 93, 0, 456, 87,
|
|
73, 0, 0, 0, -178, 0, 59, 0, 0, 90,
|
|
0, 0, 0, 0, 0, 0, 0, 154, -57, 111,
|
|
255, 126, 0, 0, 27, 0, 125, 265, 0, 267,
|
|
61, -105, 0, 0
|
|
);
|
|
|
|
protected array $gotoDefault = array(
|
|
-32768, 511, 740, 4, 741, 934, 816, 825, 597, 529,
|
|
707, 347, 625, 421, 1302, 911, 1121, 578, 844, 1245,
|
|
1253, 456, 847, 330, 730, 893, 894, 895, 399, 385,
|
|
391, 397, 649, 626, 493, 879, 452, 871, 485, 874,
|
|
451, 883, 164, 417, 509, 887, 3, 890, 556, 921,
|
|
386, 898, 387, 677, 900, 562, 902, 903, 394, 400,
|
|
401, 1126, 570, 622, 915, 256, 564, 916, 384, 917,
|
|
924, 389, 392, 688, 464, 504, 498, 410, 1101, 565,
|
|
608, 646, 446, 472, 620, 632, 618, 479, 433, 415,
|
|
329, 956, 964, 486, 462, 978, 349, 986, 738, 1134,
|
|
640, 488, 994, 641, 1001, 1004, 530, 531, 477, 1016,
|
|
272, 1019, 489, 19, 667, 1030, 1031, 668, 642, 1053,
|
|
643, 669, 644, 1055, 471, 598, 1063, 453, 1071, 1290,
|
|
454, 1075, 266, 1078, 278, 416, 434, 1084, 1085, 9,
|
|
1091, 698, 699, 11, 276, 508, 1116, 689, 450, 1133,
|
|
438, 1203, 1205, 558, 490, 1223, 1222, 680, 505, 1228,
|
|
447, 1293, 448, 532, 473, 316, 533, 308, 333, 313,
|
|
548, 295, 334, 534, 474, 1299, 1307, 331, 31, 1327,
|
|
1338, 342, 575, 613
|
|
);
|
|
|
|
protected array $ruleToNonTerminal = array(
|
|
0, 1, 3, 3, 2, 5, 5, 6, 6, 6,
|
|
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
|
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
|
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
|
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
|
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
|
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
|
6, 6, 6, 6, 6, 6, 6, 7, 7, 7,
|
|
7, 7, 7, 7, 7, 8, 8, 9, 10, 11,
|
|
11, 11, 12, 12, 13, 13, 14, 15, 15, 16,
|
|
16, 17, 17, 18, 18, 21, 21, 22, 23, 23,
|
|
24, 24, 4, 4, 4, 4, 4, 4, 4, 4,
|
|
4, 4, 4, 29, 29, 30, 30, 32, 34, 34,
|
|
28, 36, 36, 33, 38, 38, 35, 35, 37, 37,
|
|
39, 39, 31, 40, 40, 41, 43, 44, 44, 45,
|
|
45, 46, 46, 48, 47, 47, 47, 47, 49, 49,
|
|
49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
|
|
49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
|
|
49, 49, 25, 25, 68, 68, 71, 71, 70, 69,
|
|
69, 62, 74, 74, 75, 75, 76, 76, 77, 77,
|
|
78, 78, 79, 79, 26, 26, 27, 27, 27, 27,
|
|
27, 87, 87, 89, 89, 82, 82, 90, 90, 91,
|
|
91, 91, 83, 83, 86, 86, 84, 84, 92, 93,
|
|
93, 56, 56, 64, 64, 67, 67, 67, 66, 94,
|
|
94, 95, 57, 57, 57, 57, 96, 96, 97, 97,
|
|
98, 98, 99, 100, 100, 101, 101, 102, 102, 54,
|
|
54, 50, 50, 104, 52, 52, 105, 51, 51, 53,
|
|
53, 63, 63, 63, 63, 80, 80, 108, 108, 110,
|
|
110, 111, 111, 111, 111, 109, 109, 109, 113, 113,
|
|
113, 113, 88, 88, 116, 116, 116, 117, 117, 114,
|
|
114, 118, 118, 120, 120, 121, 121, 115, 122, 122,
|
|
119, 123, 123, 123, 123, 112, 112, 81, 81, 81,
|
|
20, 20, 20, 125, 124, 124, 126, 126, 126, 126,
|
|
59, 127, 127, 128, 60, 130, 130, 131, 131, 132,
|
|
132, 85, 133, 133, 133, 133, 133, 133, 133, 138,
|
|
138, 139, 139, 140, 140, 140, 140, 140, 141, 142,
|
|
142, 137, 137, 134, 134, 136, 136, 144, 144, 143,
|
|
143, 143, 143, 143, 143, 143, 135, 145, 145, 147,
|
|
146, 146, 61, 103, 148, 148, 55, 55, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
|
42, 42, 155, 149, 149, 154, 154, 157, 158, 158,
|
|
159, 160, 161, 161, 161, 161, 19, 19, 72, 72,
|
|
72, 72, 150, 150, 150, 150, 163, 163, 151, 151,
|
|
153, 153, 153, 156, 156, 168, 168, 168, 168, 168,
|
|
168, 168, 168, 168, 169, 169, 169, 107, 171, 171,
|
|
171, 171, 152, 152, 152, 152, 152, 152, 152, 152,
|
|
58, 58, 166, 166, 166, 166, 172, 172, 162, 162,
|
|
162, 173, 173, 173, 173, 173, 173, 73, 73, 65,
|
|
65, 65, 65, 129, 129, 129, 129, 176, 175, 165,
|
|
165, 165, 165, 165, 165, 165, 164, 164, 164, 174,
|
|
174, 174, 174, 106, 170, 178, 178, 177, 177, 179,
|
|
179, 179, 179, 179, 179, 179, 179, 167, 167, 167,
|
|
167, 181, 182, 180, 180, 180, 180, 180, 180, 180,
|
|
180, 183, 183, 183, 183
|
|
);
|
|
|
|
protected array $ruleToLength = array(
|
|
1, 1, 2, 0, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
|
|
1, 0, 1, 1, 2, 1, 3, 4, 1, 2,
|
|
0, 1, 1, 1, 1, 4, 3, 5, 4, 3,
|
|
4, 2, 3, 1, 1, 7, 6, 2, 3, 1,
|
|
2, 3, 1, 2, 3, 1, 1, 3, 1, 3,
|
|
1, 2, 2, 3, 1, 3, 2, 3, 1, 3,
|
|
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, 6, 5, 6, 3,
|
|
2, 1, 1, 1, 0, 2, 1, 3, 8, 0,
|
|
4, 2, 1, 3, 0, 1, 0, 1, 0, 1,
|
|
3, 1, 1, 1, 8, 9, 7, 8, 7, 6,
|
|
8, 0, 2, 0, 2, 1, 2, 1, 2, 1,
|
|
1, 1, 0, 2, 0, 2, 0, 2, 2, 1,
|
|
3, 1, 4, 1, 4, 1, 1, 4, 2, 1,
|
|
3, 3, 3, 4, 4, 5, 0, 2, 4, 3,
|
|
1, 1, 7, 0, 2, 1, 3, 3, 4, 1,
|
|
4, 0, 2, 5, 0, 2, 6, 0, 2, 0,
|
|
3, 1, 2, 1, 1, 2, 0, 1, 3, 0,
|
|
2, 1, 1, 1, 1, 6, 8, 6, 1, 2,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 3, 3,
|
|
3, 1, 3, 3, 3, 3, 3, 1, 3, 3,
|
|
1, 1, 2, 1, 1, 0, 1, 0, 2, 2,
|
|
2, 4, 3, 1, 1, 3, 1, 2, 2, 3,
|
|
2, 3, 1, 1, 2, 3, 1, 1, 3, 2,
|
|
0, 1, 5, 5, 6, 10, 3, 5, 1, 1,
|
|
3, 0, 2, 4, 5, 4, 4, 4, 3, 1,
|
|
1, 1, 1, 1, 1, 0, 1, 1, 2, 1,
|
|
1, 1, 1, 1, 1, 1, 2, 1, 3, 1,
|
|
1, 3, 2, 2, 3, 1, 0, 1, 1, 3,
|
|
3, 3, 4, 4, 1, 1, 2, 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, 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, 2, 8, 9, 8, 9, 9, 10,
|
|
9, 10, 8, 3, 2, 0, 4, 2, 1, 3,
|
|
2, 1, 2, 2, 2, 4, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 3, 1, 1, 1, 0, 3,
|
|
0, 1, 1, 0, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 3, 5, 3, 3, 4, 1,
|
|
1, 3, 1, 1, 1, 1, 1, 3, 2, 3,
|
|
0, 1, 1, 3, 1, 1, 1, 1, 1, 3,
|
|
1, 1, 4, 4, 1, 4, 4, 0, 1, 1,
|
|
1, 3, 3, 1, 4, 2, 2, 1, 3, 1,
|
|
4, 4, 3, 3, 3, 3, 1, 3, 1, 1,
|
|
3, 1, 1, 4, 1, 1, 1, 3, 1, 1,
|
|
2, 1, 3, 4, 3, 2, 0, 2, 2, 1,
|
|
2, 1, 1, 1, 4, 3, 3, 3, 3, 6,
|
|
3, 1, 1, 2, 1
|
|
);
|
|
|
|
protected function initReduceCallbacks(): void {
|
|
$this->reduceCallbacks = [
|
|
0 => null,
|
|
1 => function ($stackPos) {
|
|
$this->semValue = $this->handleNamespaces($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
2 => function ($stackPos) {
|
|
if (is_array($this->semStack[$stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); } else { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; };
|
|
},
|
|
3 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
4 => function ($stackPos) {
|
|
$nop = $this->maybeCreateZeroLengthNop($this->tokenPos);;
|
|
if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)];
|
|
},
|
|
5 => null,
|
|
6 => null,
|
|
7 => null,
|
|
8 => null,
|
|
9 => null,
|
|
10 => null,
|
|
11 => null,
|
|
12 => null,
|
|
13 => null,
|
|
14 => null,
|
|
15 => null,
|
|
16 => null,
|
|
17 => null,
|
|
18 => null,
|
|
19 => null,
|
|
20 => null,
|
|
21 => null,
|
|
22 => null,
|
|
23 => null,
|
|
24 => null,
|
|
25 => null,
|
|
26 => null,
|
|
27 => null,
|
|
28 => null,
|
|
29 => null,
|
|
30 => null,
|
|
31 => null,
|
|
32 => null,
|
|
33 => null,
|
|
34 => null,
|
|
35 => null,
|
|
36 => null,
|
|
37 => null,
|
|
38 => null,
|
|
39 => null,
|
|
40 => null,
|
|
41 => null,
|
|
42 => null,
|
|
43 => null,
|
|
44 => null,
|
|
45 => null,
|
|
46 => null,
|
|
47 => null,
|
|
48 => null,
|
|
49 => null,
|
|
50 => null,
|
|
51 => null,
|
|
52 => null,
|
|
53 => null,
|
|
54 => null,
|
|
55 => null,
|
|
56 => null,
|
|
57 => null,
|
|
58 => null,
|
|
59 => null,
|
|
60 => null,
|
|
61 => null,
|
|
62 => null,
|
|
63 => null,
|
|
64 => null,
|
|
65 => null,
|
|
66 => null,
|
|
67 => null,
|
|
68 => null,
|
|
69 => null,
|
|
70 => null,
|
|
71 => null,
|
|
72 => null,
|
|
73 => null,
|
|
74 => null,
|
|
75 => null,
|
|
76 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(1-1)]; if ($this->semValue === "<?=") $this->emitError(new Error('Cannot use "<?=" as an identifier', $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])));
|
|
},
|
|
77 => null,
|
|
78 => null,
|
|
79 => null,
|
|
80 => null,
|
|
81 => null,
|
|
82 => null,
|
|
83 => null,
|
|
84 => null,
|
|
85 => function ($stackPos) {
|
|
$this->semValue = new Node\Identifier($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
86 => function ($stackPos) {
|
|
$this->semValue = new Node\Identifier($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
87 => function ($stackPos) {
|
|
$this->semValue = new Node\Identifier($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
88 => function ($stackPos) {
|
|
$this->semValue = new Node\Identifier($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
89 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
90 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
91 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
92 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
93 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
94 => null,
|
|
95 => function ($stackPos) {
|
|
$this->semValue = new Name(substr($this->semStack[$stackPos-(1-1)], 1), $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
96 => function ($stackPos) {
|
|
$this->semValue = new Expr\Variable(substr($this->semStack[$stackPos-(1-1)], 1), $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
97 => function ($stackPos) {
|
|
/* nothing */
|
|
},
|
|
98 => function ($stackPos) {
|
|
/* nothing */
|
|
},
|
|
99 => function ($stackPos) {
|
|
/* nothing */
|
|
},
|
|
100 => function ($stackPos) {
|
|
$this->emitError(new Error('A trailing comma is not allowed here', $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])));
|
|
},
|
|
101 => null,
|
|
102 => null,
|
|
103 => function ($stackPos) {
|
|
$this->semValue = new Node\Attribute($this->semStack[$stackPos-(1-1)], [], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
104 => function ($stackPos) {
|
|
$this->semValue = new Node\Attribute($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
105 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
106 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
107 => function ($stackPos) {
|
|
$this->semValue = new Node\AttributeGroup($this->semStack[$stackPos-(4-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
108 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
109 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
110 => function ($stackPos) {
|
|
$this->semValue = [];
|
|
},
|
|
111 => null,
|
|
112 => null,
|
|
113 => null,
|
|
114 => null,
|
|
115 => function ($stackPos) {
|
|
$this->semValue = new Stmt\HaltCompiler($this->handleHaltCompiler(), $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
116 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Namespace_($this->semStack[$stackPos-(3-2)], null, $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_SEMICOLON);
|
|
$this->checkNamespace($this->semValue);
|
|
},
|
|
117 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Namespace_($this->semStack[$stackPos-(5-2)], $this->semStack[$stackPos-(5-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
|
|
$this->checkNamespace($this->semValue);
|
|
},
|
|
118 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Namespace_(null, $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->semValue->setAttribute('kind', Stmt\Namespace_::KIND_BRACED);
|
|
$this->checkNamespace($this->semValue);
|
|
},
|
|
119 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Use_($this->semStack[$stackPos-(3-2)], Stmt\Use_::TYPE_NORMAL, $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
120 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Use_($this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
121 => null,
|
|
122 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Const_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
123 => function ($stackPos) {
|
|
$this->semValue = Stmt\Use_::TYPE_FUNCTION;
|
|
},
|
|
124 => function ($stackPos) {
|
|
$this->semValue = Stmt\Use_::TYPE_CONSTANT;
|
|
},
|
|
125 => function ($stackPos) {
|
|
$this->semValue = new Stmt\GroupUse($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-6)], $this->semStack[$stackPos-(7-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(7-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
126 => function ($stackPos) {
|
|
$this->semValue = new Stmt\GroupUse($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-5)], Stmt\Use_::TYPE_UNKNOWN, $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
127 => null,
|
|
128 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
129 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
130 => null,
|
|
131 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
132 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
133 => null,
|
|
134 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
135 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
136 => function ($stackPos) {
|
|
$this->semValue = new Node\UseItem($this->semStack[$stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])); $this->checkUseUse($this->semValue, $stackPos-(1-1));
|
|
},
|
|
137 => function ($stackPos) {
|
|
$this->semValue = new Node\UseItem($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos])); $this->checkUseUse($this->semValue, $stackPos-(3-3));
|
|
},
|
|
138 => function ($stackPos) {
|
|
$this->semValue = new Node\UseItem($this->semStack[$stackPos-(1-1)], null, Stmt\Use_::TYPE_UNKNOWN, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])); $this->checkUseUse($this->semValue, $stackPos-(1-1));
|
|
},
|
|
139 => function ($stackPos) {
|
|
$this->semValue = new Node\UseItem($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], Stmt\Use_::TYPE_UNKNOWN, $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos])); $this->checkUseUse($this->semValue, $stackPos-(3-3));
|
|
},
|
|
140 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(1-1)]; $this->semValue->type = Stmt\Use_::TYPE_NORMAL;
|
|
},
|
|
141 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(2-2)]; $this->semValue->type = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
142 => null,
|
|
143 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
144 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
145 => function ($stackPos) {
|
|
$this->semValue = new Node\Const_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
146 => null,
|
|
147 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
148 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
149 => function ($stackPos) {
|
|
$this->semValue = new Node\Const_(new Node\Identifier($this->semStack[$stackPos-(3-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos-(3-1)])), $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
150 => function ($stackPos) {
|
|
$this->semValue = new Node\Const_(new Node\Identifier($this->semStack[$stackPos-(3-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos-(3-1)])), $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
151 => function ($stackPos) {
|
|
if (is_array($this->semStack[$stackPos-(2-2)])) { $this->semValue = array_merge($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]); } else { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; };
|
|
},
|
|
152 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
153 => function ($stackPos) {
|
|
$nop = $this->maybeCreateZeroLengthNop($this->tokenPos);;
|
|
if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)];
|
|
},
|
|
154 => null,
|
|
155 => null,
|
|
156 => null,
|
|
157 => function ($stackPos) {
|
|
throw new Error('__HALT_COMPILER() can only be used from the outermost scope', $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
158 => function ($stackPos) {
|
|
|
|
if ($this->semStack[$stackPos-(3-2)]) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)]; $comments = $this->getCommentsBeforeToken($this->tokenStartStack[$stackPos-(3-1)]); $stmts = $this->semValue; if (!empty($comments)) {$stmts[0]->setAttribute('comments', array_merge($comments, $stmts[0]->getAttribute('comments', []))); };
|
|
} else {
|
|
$this->semValue = $this->maybeCreateNop($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]);
|
|
if (null === $this->semValue) { $this->semValue = array(); }
|
|
}
|
|
|
|
},
|
|
159 => function ($stackPos) {
|
|
$this->semValue = new Stmt\If_($this->semStack[$stackPos-(7-3)], ['stmts' => is_array($this->semStack[$stackPos-(7-5)]) ? $this->semStack[$stackPos-(7-5)] : array($this->semStack[$stackPos-(7-5)]), 'elseifs' => $this->semStack[$stackPos-(7-6)], 'else' => $this->semStack[$stackPos-(7-7)]], $this->getAttributes($this->tokenStartStack[$stackPos-(7-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
160 => function ($stackPos) {
|
|
$this->semValue = new Stmt\If_($this->semStack[$stackPos-(10-3)], ['stmts' => $this->semStack[$stackPos-(10-6)], 'elseifs' => $this->semStack[$stackPos-(10-7)], 'else' => $this->semStack[$stackPos-(10-8)]], $this->getAttributes($this->tokenStartStack[$stackPos-(10-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
161 => function ($stackPos) {
|
|
$this->semValue = new Stmt\While_($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
162 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Do_($this->semStack[$stackPos-(7-5)], is_array($this->semStack[$stackPos-(7-2)]) ? $this->semStack[$stackPos-(7-2)] : array($this->semStack[$stackPos-(7-2)]), $this->getAttributes($this->tokenStartStack[$stackPos-(7-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
163 => function ($stackPos) {
|
|
$this->semValue = new Stmt\For_(['init' => $this->semStack[$stackPos-(9-3)], 'cond' => $this->semStack[$stackPos-(9-5)], 'loop' => $this->semStack[$stackPos-(9-7)], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->getAttributes($this->tokenStartStack[$stackPos-(9-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
164 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Switch_($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
165 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Break_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
166 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Continue_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
167 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Return_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
168 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Global_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
169 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Static_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
170 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Echo_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
171 => function ($stackPos) {
|
|
|
|
$this->semValue = new Stmt\InlineHTML($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->semValue->setAttribute('hasLeadingNewline', $this->inlineHtmlHasLeadingNewline($stackPos-(1-1)));
|
|
|
|
},
|
|
172 => function ($stackPos) {
|
|
|
|
$e = $this->semStack[$stackPos-(2-1)];
|
|
if ($e instanceof Expr\Throw_) {
|
|
// For backwards-compatibility reasons, convert throw in statement position into
|
|
// Stmt\Throw_ rather than Stmt\Expression(Expr\Throw_).
|
|
$this->semValue = new Stmt\Throw_($e->expr, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
} else {
|
|
$this->semValue = new Stmt\Expression($e, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
}
|
|
|
|
},
|
|
173 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Unset_($this->semStack[$stackPos-(5-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
174 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-5)][0], ['keyVar' => null, 'byRef' => $this->semStack[$stackPos-(7-5)][1], 'stmts' => $this->semStack[$stackPos-(7-7)]], $this->getAttributes($this->tokenStartStack[$stackPos-(7-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
175 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(9-3)], $this->semStack[$stackPos-(9-7)][0], ['keyVar' => $this->semStack[$stackPos-(9-5)], 'byRef' => $this->semStack[$stackPos-(9-7)][1], 'stmts' => $this->semStack[$stackPos-(9-9)]], $this->getAttributes($this->tokenStartStack[$stackPos-(9-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
176 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Foreach_($this->semStack[$stackPos-(6-3)], new Expr\Error($this->getAttributes($this->tokenStartStack[$stackPos-(6-4)], $this->tokenEndStack[$stackPos-(6-4)])), ['stmts' => $this->semStack[$stackPos-(6-6)]], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
177 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Declare_($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
178 => function ($stackPos) {
|
|
$this->semValue = new Stmt\TryCatch($this->semStack[$stackPos-(6-3)], $this->semStack[$stackPos-(6-5)], $this->semStack[$stackPos-(6-6)], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos])); $this->checkTryCatch($this->semValue);
|
|
},
|
|
179 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Goto_($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
180 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Label($this->semStack[$stackPos-(2-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
181 => function ($stackPos) {
|
|
$this->semValue = array(); /* means: no statement */
|
|
},
|
|
182 => null,
|
|
183 => function ($stackPos) {
|
|
$this->semValue = $this->maybeCreateNop($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]);
|
|
if ($this->semValue === null) $this->semValue = array(); /* means: no statement */
|
|
},
|
|
184 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
185 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
186 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
187 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
188 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Catch_($this->semStack[$stackPos-(8-3)], $this->semStack[$stackPos-(8-4)], $this->semStack[$stackPos-(8-7)], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
189 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
190 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Finally_($this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
191 => null,
|
|
192 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
193 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
194 => function ($stackPos) {
|
|
$this->semValue = false;
|
|
},
|
|
195 => function ($stackPos) {
|
|
$this->semValue = true;
|
|
},
|
|
196 => function ($stackPos) {
|
|
$this->semValue = false;
|
|
},
|
|
197 => function ($stackPos) {
|
|
$this->semValue = true;
|
|
},
|
|
198 => function ($stackPos) {
|
|
$this->semValue = false;
|
|
},
|
|
199 => function ($stackPos) {
|
|
$this->semValue = true;
|
|
},
|
|
200 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
201 => function ($stackPos) {
|
|
$this->semValue = [];
|
|
},
|
|
202 => null,
|
|
203 => function ($stackPos) {
|
|
$this->semValue = new Node\Identifier($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
204 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Function_($this->semStack[$stackPos-(8-3)], ['byRef' => $this->semStack[$stackPos-(8-2)], 'params' => $this->semStack[$stackPos-(8-5)], 'returnType' => $this->semStack[$stackPos-(8-7)], 'stmts' => $this->semStack[$stackPos-(8-8)], 'attrGroups' => []], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
205 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Function_($this->semStack[$stackPos-(9-4)], ['byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-6)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)], 'attrGroups' => $this->semStack[$stackPos-(9-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(9-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
206 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Class_($this->semStack[$stackPos-(7-2)], ['type' => $this->semStack[$stackPos-(7-1)], 'extends' => $this->semStack[$stackPos-(7-3)], 'implements' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)], 'attrGroups' => []], $this->getAttributes($this->tokenStartStack[$stackPos-(7-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->checkClass($this->semValue, $stackPos-(7-2));
|
|
},
|
|
207 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Class_($this->semStack[$stackPos-(8-3)], ['type' => $this->semStack[$stackPos-(8-2)], 'extends' => $this->semStack[$stackPos-(8-4)], 'implements' => $this->semStack[$stackPos-(8-5)], 'stmts' => $this->semStack[$stackPos-(8-7)], 'attrGroups' => $this->semStack[$stackPos-(8-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->checkClass($this->semValue, $stackPos-(8-3));
|
|
},
|
|
208 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Interface_($this->semStack[$stackPos-(7-3)], ['extends' => $this->semStack[$stackPos-(7-4)], 'stmts' => $this->semStack[$stackPos-(7-6)], 'attrGroups' => $this->semStack[$stackPos-(7-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(7-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->checkInterface($this->semValue, $stackPos-(7-3));
|
|
},
|
|
209 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Trait_($this->semStack[$stackPos-(6-3)], ['stmts' => $this->semStack[$stackPos-(6-5)], 'attrGroups' => $this->semStack[$stackPos-(6-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
210 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Enum_($this->semStack[$stackPos-(8-3)], ['scalarType' => $this->semStack[$stackPos-(8-4)], 'implements' => $this->semStack[$stackPos-(8-5)], 'stmts' => $this->semStack[$stackPos-(8-7)], 'attrGroups' => $this->semStack[$stackPos-(8-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->checkEnum($this->semValue, $stackPos-(8-3));
|
|
},
|
|
211 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
212 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
213 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
214 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
215 => function ($stackPos) {
|
|
$this->semValue = 0;
|
|
},
|
|
216 => null,
|
|
217 => null,
|
|
218 => function ($stackPos) {
|
|
$this->checkClassModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
219 => function ($stackPos) {
|
|
$this->semValue = Modifiers::ABSTRACT;
|
|
},
|
|
220 => function ($stackPos) {
|
|
$this->semValue = Modifiers::FINAL;
|
|
},
|
|
221 => function ($stackPos) {
|
|
$this->semValue = Modifiers::READONLY;
|
|
},
|
|
222 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
223 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
224 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
225 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
226 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
227 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
228 => null,
|
|
229 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
230 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
231 => function ($stackPos) {
|
|
$this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
232 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-2)];
|
|
},
|
|
233 => function ($stackPos) {
|
|
$this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
234 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-2)];
|
|
},
|
|
235 => function ($stackPos) {
|
|
$this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
236 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
237 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-2)];
|
|
},
|
|
238 => null,
|
|
239 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
240 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
241 => function ($stackPos) {
|
|
$this->semValue = new Node\DeclareItem($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
242 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
243 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-3)];
|
|
},
|
|
244 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-2)];
|
|
},
|
|
245 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(5-3)];
|
|
},
|
|
246 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
247 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
248 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Case_($this->semStack[$stackPos-(4-2)], $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
249 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Case_(null, $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
250 => null,
|
|
251 => null,
|
|
252 => function ($stackPos) {
|
|
$this->semValue = new Expr\Match_($this->semStack[$stackPos-(7-3)], $this->semStack[$stackPos-(7-6)], $this->getAttributes($this->tokenStartStack[$stackPos-(7-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
253 => function ($stackPos) {
|
|
$this->semValue = [];
|
|
},
|
|
254 => null,
|
|
255 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
256 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
257 => function ($stackPos) {
|
|
$this->semValue = new Node\MatchArm($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
258 => function ($stackPos) {
|
|
$this->semValue = new Node\MatchArm(null, $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
259 => function ($stackPos) {
|
|
$this->semValue = is_array($this->semStack[$stackPos-(1-1)]) ? $this->semStack[$stackPos-(1-1)] : array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
260 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-2)];
|
|
},
|
|
261 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
262 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
263 => function ($stackPos) {
|
|
$this->semValue = new Stmt\ElseIf_($this->semStack[$stackPos-(5-3)], is_array($this->semStack[$stackPos-(5-5)]) ? $this->semStack[$stackPos-(5-5)] : array($this->semStack[$stackPos-(5-5)]), $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
264 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
265 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
266 => function ($stackPos) {
|
|
$this->semValue = new Stmt\ElseIf_($this->semStack[$stackPos-(6-3)], $this->semStack[$stackPos-(6-6)], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos])); $this->fixupAlternativeElse($this->semValue);
|
|
},
|
|
267 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
268 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Else_(is_array($this->semStack[$stackPos-(2-2)]) ? $this->semStack[$stackPos-(2-2)] : array($this->semStack[$stackPos-(2-2)]), $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
269 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
270 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Else_($this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos])); $this->fixupAlternativeElse($this->semValue);
|
|
},
|
|
271 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)], false);
|
|
},
|
|
272 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(2-2)], true);
|
|
},
|
|
273 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)], false);
|
|
},
|
|
274 => function ($stackPos) {
|
|
$this->semValue = array($this->fixupArrayDestructuring($this->semStack[$stackPos-(1-1)]), false);
|
|
},
|
|
275 => null,
|
|
276 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
277 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
278 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
279 => function ($stackPos) {
|
|
$this->semValue = 0;
|
|
},
|
|
280 => function ($stackPos) {
|
|
$this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
281 => function ($stackPos) {
|
|
$this->semValue = Modifiers::PUBLIC;
|
|
},
|
|
282 => function ($stackPos) {
|
|
$this->semValue = Modifiers::PROTECTED;
|
|
},
|
|
283 => function ($stackPos) {
|
|
$this->semValue = Modifiers::PRIVATE;
|
|
},
|
|
284 => function ($stackPos) {
|
|
$this->semValue = Modifiers::READONLY;
|
|
},
|
|
285 => function ($stackPos) {
|
|
$this->semValue = new Node\Param($this->semStack[$stackPos-(6-6)], null, $this->semStack[$stackPos-(6-3)], $this->semStack[$stackPos-(6-4)], $this->semStack[$stackPos-(6-5)], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos]), $this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-1)]);
|
|
$this->checkParam($this->semValue);
|
|
},
|
|
286 => function ($stackPos) {
|
|
$this->semValue = new Node\Param($this->semStack[$stackPos-(8-6)], $this->semStack[$stackPos-(8-8)], $this->semStack[$stackPos-(8-3)], $this->semStack[$stackPos-(8-4)], $this->semStack[$stackPos-(8-5)], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos]), $this->semStack[$stackPos-(8-2)], $this->semStack[$stackPos-(8-1)]);
|
|
$this->checkParam($this->semValue);
|
|
},
|
|
287 => function ($stackPos) {
|
|
$this->semValue = new Node\Param(new Expr\Error($this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos])), null, $this->semStack[$stackPos-(6-3)], $this->semStack[$stackPos-(6-4)], $this->semStack[$stackPos-(6-5)], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos]), $this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-1)]);
|
|
},
|
|
288 => null,
|
|
289 => function ($stackPos) {
|
|
$this->semValue = new Node\NullableType($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
290 => function ($stackPos) {
|
|
$this->semValue = new Node\UnionType($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
291 => null,
|
|
292 => null,
|
|
293 => function ($stackPos) {
|
|
$this->semValue = new Node\Name('static', $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
294 => function ($stackPos) {
|
|
$this->semValue = $this->handleBuiltinTypes($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
295 => function ($stackPos) {
|
|
$this->semValue = new Node\Identifier('array', $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
296 => function ($stackPos) {
|
|
$this->semValue = new Node\Identifier('callable', $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
297 => null,
|
|
298 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
299 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]);
|
|
},
|
|
300 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
301 => null,
|
|
302 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
303 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]);
|
|
},
|
|
304 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
305 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]);
|
|
},
|
|
306 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
307 => function ($stackPos) {
|
|
$this->semValue = new Node\IntersectionType($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
308 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]);
|
|
},
|
|
309 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
310 => function ($stackPos) {
|
|
$this->semValue = new Node\IntersectionType($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
311 => null,
|
|
312 => function ($stackPos) {
|
|
$this->semValue = new Node\NullableType($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
313 => function ($stackPos) {
|
|
$this->semValue = new Node\UnionType($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
314 => null,
|
|
315 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
316 => null,
|
|
317 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
318 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
319 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
320 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
321 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-2)];
|
|
},
|
|
322 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(3-2)]);
|
|
},
|
|
323 => function ($stackPos) {
|
|
$this->semValue = new Node\VariadicPlaceholder($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
324 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
325 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
326 => function ($stackPos) {
|
|
$this->semValue = new Node\Arg($this->semStack[$stackPos-(1-1)], false, false, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
327 => function ($stackPos) {
|
|
$this->semValue = new Node\Arg($this->semStack[$stackPos-(2-2)], true, false, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
328 => function ($stackPos) {
|
|
$this->semValue = new Node\Arg($this->semStack[$stackPos-(2-2)], false, true, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
329 => function ($stackPos) {
|
|
$this->semValue = new Node\Arg($this->semStack[$stackPos-(3-3)], false, false, $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]), $this->semStack[$stackPos-(3-1)]);
|
|
},
|
|
330 => null,
|
|
331 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
332 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
333 => null,
|
|
334 => null,
|
|
335 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
336 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
337 => function ($stackPos) {
|
|
$this->semValue = new Node\StaticVar($this->semStack[$stackPos-(1-1)], null, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
338 => function ($stackPos) {
|
|
$this->semValue = new Node\StaticVar($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
339 => function ($stackPos) {
|
|
if ($this->semStack[$stackPos-(2-2)] !== null) { $this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)]; }
|
|
},
|
|
340 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
341 => function ($stackPos) {
|
|
$nop = $this->maybeCreateZeroLengthNop($this->tokenPos);;
|
|
if ($nop !== null) { $this->semStack[$stackPos-(1-1)][] = $nop; } $this->semValue = $this->semStack[$stackPos-(1-1)];
|
|
},
|
|
342 => function ($stackPos) {
|
|
$this->semValue = new Stmt\Property($this->semStack[$stackPos-(5-2)], $this->semStack[$stackPos-(5-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]), $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-1)]);
|
|
$this->checkProperty($this->semValue, $stackPos-(5-2));
|
|
},
|
|
343 => function ($stackPos) {
|
|
$this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(5-4)], $this->semStack[$stackPos-(5-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]), $this->semStack[$stackPos-(5-1)]);
|
|
$this->checkClassConst($this->semValue, $stackPos-(5-2));
|
|
},
|
|
344 => function ($stackPos) {
|
|
$this->semValue = new Stmt\ClassConst($this->semStack[$stackPos-(6-5)], $this->semStack[$stackPos-(6-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos]), $this->semStack[$stackPos-(6-1)], $this->semStack[$stackPos-(6-4)]);
|
|
$this->checkClassConst($this->semValue, $stackPos-(6-2));
|
|
},
|
|
345 => function ($stackPos) {
|
|
$this->semValue = new Stmt\ClassMethod($this->semStack[$stackPos-(10-5)], ['type' => $this->semStack[$stackPos-(10-2)], 'byRef' => $this->semStack[$stackPos-(10-4)], 'params' => $this->semStack[$stackPos-(10-7)], 'returnType' => $this->semStack[$stackPos-(10-9)], 'stmts' => $this->semStack[$stackPos-(10-10)], 'attrGroups' => $this->semStack[$stackPos-(10-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(10-1)], $this->tokenEndStack[$stackPos]));
|
|
$this->checkClassMethod($this->semValue, $stackPos-(10-2));
|
|
},
|
|
346 => function ($stackPos) {
|
|
$this->semValue = new Stmt\TraitUse($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
347 => function ($stackPos) {
|
|
$this->semValue = new Stmt\EnumCase($this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->semStack[$stackPos-(5-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
348 => function ($stackPos) {
|
|
$this->semValue = null; /* will be skipped */
|
|
},
|
|
349 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
350 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
351 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
352 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
353 => function ($stackPos) {
|
|
$this->semValue = new Stmt\TraitUseAdaptation\Precedence($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
354 => function ($stackPos) {
|
|
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(5-1)][0], $this->semStack[$stackPos-(5-1)][1], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
355 => function ($stackPos) {
|
|
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], $this->semStack[$stackPos-(4-3)], null, $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
356 => function ($stackPos) {
|
|
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
357 => function ($stackPos) {
|
|
$this->semValue = new Stmt\TraitUseAdaptation\Alias($this->semStack[$stackPos-(4-1)][0], $this->semStack[$stackPos-(4-1)][1], null, $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
358 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)]);
|
|
},
|
|
359 => null,
|
|
360 => function ($stackPos) {
|
|
$this->semValue = array(null, $this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
361 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
362 => null,
|
|
363 => null,
|
|
364 => function ($stackPos) {
|
|
$this->semValue = 0;
|
|
},
|
|
365 => function ($stackPos) {
|
|
$this->semValue = 0;
|
|
},
|
|
366 => null,
|
|
367 => null,
|
|
368 => function ($stackPos) {
|
|
$this->checkModifier($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $stackPos-(2-2)); $this->semValue = $this->semStack[$stackPos-(2-1)] | $this->semStack[$stackPos-(2-2)];
|
|
},
|
|
369 => function ($stackPos) {
|
|
$this->semValue = Modifiers::PUBLIC;
|
|
},
|
|
370 => function ($stackPos) {
|
|
$this->semValue = Modifiers::PROTECTED;
|
|
},
|
|
371 => function ($stackPos) {
|
|
$this->semValue = Modifiers::PRIVATE;
|
|
},
|
|
372 => function ($stackPos) {
|
|
$this->semValue = Modifiers::STATIC;
|
|
},
|
|
373 => function ($stackPos) {
|
|
$this->semValue = Modifiers::ABSTRACT;
|
|
},
|
|
374 => function ($stackPos) {
|
|
$this->semValue = Modifiers::FINAL;
|
|
},
|
|
375 => function ($stackPos) {
|
|
$this->semValue = Modifiers::READONLY;
|
|
},
|
|
376 => null,
|
|
377 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
378 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
379 => function ($stackPos) {
|
|
$this->semValue = new Node\VarLikeIdentifier(substr($this->semStack[$stackPos-(1-1)], 1), $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
380 => function ($stackPos) {
|
|
$this->semValue = new Node\PropertyItem($this->semStack[$stackPos-(1-1)], null, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
381 => function ($stackPos) {
|
|
$this->semValue = new Node\PropertyItem($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
382 => null,
|
|
383 => null,
|
|
384 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
385 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
386 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
387 => null,
|
|
388 => null,
|
|
389 => function ($stackPos) {
|
|
$this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
390 => function ($stackPos) {
|
|
$this->semValue = new Expr\Assign($this->fixupArrayDestructuring($this->semStack[$stackPos-(3-1)]), $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
391 => function ($stackPos) {
|
|
$this->semValue = new Expr\Assign($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
392 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
393 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignRef($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
if (!$this->phpVersion->allowsAssignNewByReference()) {
|
|
$this->emitError(new Error('Cannot assign new by reference', $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos])));
|
|
}
|
|
|
|
},
|
|
394 => null,
|
|
395 => null,
|
|
396 => function ($stackPos) {
|
|
$this->semValue = new Expr\Clone_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
397 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
398 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
399 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
400 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
401 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
402 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
403 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
404 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
405 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
406 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
407 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
408 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
409 => function ($stackPos) {
|
|
$this->semValue = new Expr\AssignOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
410 => function ($stackPos) {
|
|
$this->semValue = new Expr\PostInc($this->semStack[$stackPos-(2-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
411 => function ($stackPos) {
|
|
$this->semValue = new Expr\PreInc($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
412 => function ($stackPos) {
|
|
$this->semValue = new Expr\PostDec($this->semStack[$stackPos-(2-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
413 => function ($stackPos) {
|
|
$this->semValue = new Expr\PreDec($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
414 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\BooleanOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
415 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\BooleanAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
416 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\LogicalOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
417 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\LogicalAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
418 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\LogicalXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
419 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\BitwiseOr($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
420 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
421 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\BitwiseAnd($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
422 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\BitwiseXor($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
423 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Concat($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
424 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Plus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
425 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Minus($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
426 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Mul($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
427 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Div($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
428 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Mod($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
429 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\ShiftLeft($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
430 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\ShiftRight($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
431 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Pow($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
432 => function ($stackPos) {
|
|
$this->semValue = new Expr\UnaryPlus($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
433 => function ($stackPos) {
|
|
$this->semValue = new Expr\UnaryMinus($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
434 => function ($stackPos) {
|
|
$this->semValue = new Expr\BooleanNot($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
435 => function ($stackPos) {
|
|
$this->semValue = new Expr\BitwiseNot($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
436 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Identical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
437 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\NotIdentical($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
438 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Equal($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
439 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\NotEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
440 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Spaceship($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
441 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Smaller($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
442 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\SmallerOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
443 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Greater($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
444 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\GreaterOrEqual($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
445 => function ($stackPos) {
|
|
$this->semValue = new Expr\Instanceof_($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
446 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
447 => function ($stackPos) {
|
|
$this->semValue = new Expr\Ternary($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-3)], $this->semStack[$stackPos-(5-5)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
448 => function ($stackPos) {
|
|
$this->semValue = new Expr\Ternary($this->semStack[$stackPos-(4-1)], null, $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
449 => function ($stackPos) {
|
|
$this->semValue = new Expr\BinaryOp\Coalesce($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
450 => function ($stackPos) {
|
|
$this->semValue = new Expr\Isset_($this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
451 => function ($stackPos) {
|
|
$this->semValue = new Expr\Empty_($this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
452 => function ($stackPos) {
|
|
$this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
453 => function ($stackPos) {
|
|
$this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_INCLUDE_ONCE, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
454 => function ($stackPos) {
|
|
$this->semValue = new Expr\Eval_($this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
455 => function ($stackPos) {
|
|
$this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
456 => function ($stackPos) {
|
|
$this->semValue = new Expr\Include_($this->semStack[$stackPos-(2-2)], Expr\Include_::TYPE_REQUIRE_ONCE, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
457 => function ($stackPos) {
|
|
$this->semValue = new Expr\Cast\Int_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
458 => function ($stackPos) {
|
|
$attrs = $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]);
|
|
$attrs['kind'] = $this->getFloatCastKind($this->semStack[$stackPos-(2-1)]);
|
|
$this->semValue = new Expr\Cast\Double($this->semStack[$stackPos-(2-2)], $attrs);
|
|
},
|
|
459 => function ($stackPos) {
|
|
$this->semValue = new Expr\Cast\String_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
460 => function ($stackPos) {
|
|
$this->semValue = new Expr\Cast\Array_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
461 => function ($stackPos) {
|
|
$this->semValue = new Expr\Cast\Object_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
462 => function ($stackPos) {
|
|
$this->semValue = new Expr\Cast\Bool_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
463 => function ($stackPos) {
|
|
$this->semValue = new Expr\Cast\Unset_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
464 => function ($stackPos) {
|
|
$attrs = $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]);
|
|
$attrs['kind'] = strtolower($this->semStack[$stackPos-(2-1)]) === 'exit' ? Expr\Exit_::KIND_EXIT : Expr\Exit_::KIND_DIE;
|
|
$this->semValue = new Expr\Exit_($this->semStack[$stackPos-(2-2)], $attrs);
|
|
},
|
|
465 => function ($stackPos) {
|
|
$this->semValue = new Expr\ErrorSuppress($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
466 => null,
|
|
467 => function ($stackPos) {
|
|
$this->semValue = new Expr\ShellExec($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
468 => function ($stackPos) {
|
|
$this->semValue = new Expr\Print_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
469 => function ($stackPos) {
|
|
$this->semValue = new Expr\Yield_(null, null, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
470 => function ($stackPos) {
|
|
$this->semValue = new Expr\Yield_($this->semStack[$stackPos-(2-2)], null, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
471 => function ($stackPos) {
|
|
$this->semValue = new Expr\Yield_($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
472 => function ($stackPos) {
|
|
$this->semValue = new Expr\YieldFrom($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
473 => function ($stackPos) {
|
|
$this->semValue = new Expr\Throw_($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
474 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrowFunction(['static' => false, 'byRef' => $this->semStack[$stackPos-(8-2)], 'params' => $this->semStack[$stackPos-(8-4)], 'returnType' => $this->semStack[$stackPos-(8-6)], 'expr' => $this->semStack[$stackPos-(8-8)], 'attrGroups' => []], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
475 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrowFunction(['static' => true, 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-5)], 'returnType' => $this->semStack[$stackPos-(9-7)], 'expr' => $this->semStack[$stackPos-(9-9)], 'attrGroups' => []], $this->getAttributes($this->tokenStartStack[$stackPos-(9-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
476 => function ($stackPos) {
|
|
$this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$stackPos-(8-2)], 'params' => $this->semStack[$stackPos-(8-4)], 'uses' => $this->semStack[$stackPos-(8-6)], 'returnType' => $this->semStack[$stackPos-(8-7)], 'stmts' => $this->semStack[$stackPos-(8-8)], 'attrGroups' => []], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
477 => function ($stackPos) {
|
|
$this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-5)], 'uses' => $this->semStack[$stackPos-(9-7)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)], 'attrGroups' => []], $this->getAttributes($this->tokenStartStack[$stackPos-(9-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
478 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrowFunction(['static' => false, 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-5)], 'returnType' => $this->semStack[$stackPos-(9-7)], 'expr' => $this->semStack[$stackPos-(9-9)], 'attrGroups' => $this->semStack[$stackPos-(9-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(9-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
479 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrowFunction(['static' => true, 'byRef' => $this->semStack[$stackPos-(10-4)], 'params' => $this->semStack[$stackPos-(10-6)], 'returnType' => $this->semStack[$stackPos-(10-8)], 'expr' => $this->semStack[$stackPos-(10-10)], 'attrGroups' => $this->semStack[$stackPos-(10-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(10-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
480 => function ($stackPos) {
|
|
$this->semValue = new Expr\Closure(['static' => false, 'byRef' => $this->semStack[$stackPos-(9-3)], 'params' => $this->semStack[$stackPos-(9-5)], 'uses' => $this->semStack[$stackPos-(9-7)], 'returnType' => $this->semStack[$stackPos-(9-8)], 'stmts' => $this->semStack[$stackPos-(9-9)], 'attrGroups' => $this->semStack[$stackPos-(9-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(9-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
481 => function ($stackPos) {
|
|
$this->semValue = new Expr\Closure(['static' => true, 'byRef' => $this->semStack[$stackPos-(10-4)], 'params' => $this->semStack[$stackPos-(10-6)], 'uses' => $this->semStack[$stackPos-(10-8)], 'returnType' => $this->semStack[$stackPos-(10-9)], 'stmts' => $this->semStack[$stackPos-(10-10)], 'attrGroups' => $this->semStack[$stackPos-(10-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(10-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
482 => function ($stackPos) {
|
|
$this->semValue = array(new Stmt\Class_(null, ['type' => $this->semStack[$stackPos-(8-2)], 'extends' => $this->semStack[$stackPos-(8-4)], 'implements' => $this->semStack[$stackPos-(8-5)], 'stmts' => $this->semStack[$stackPos-(8-7)], 'attrGroups' => $this->semStack[$stackPos-(8-1)]], $this->getAttributes($this->tokenStartStack[$stackPos-(8-1)], $this->tokenEndStack[$stackPos])), $this->semStack[$stackPos-(8-3)]);
|
|
$this->checkClass($this->semValue[0], -1);
|
|
},
|
|
483 => function ($stackPos) {
|
|
$this->semValue = new Expr\New_($this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
484 => function ($stackPos) {
|
|
list($class, $ctorArgs) = $this->semStack[$stackPos-(2-2)]; $this->semValue = new Expr\New_($class, $ctorArgs, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
485 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
486 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(4-3)];
|
|
},
|
|
487 => null,
|
|
488 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
489 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
490 => function ($stackPos) {
|
|
$this->semValue = new Node\ClosureUse($this->semStack[$stackPos-(2-2)], $this->semStack[$stackPos-(2-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
491 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
492 => function ($stackPos) {
|
|
$this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
493 => function ($stackPos) {
|
|
$this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
494 => function ($stackPos) {
|
|
$this->semValue = new Expr\FuncCall($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
495 => function ($stackPos) {
|
|
$this->semValue = new Expr\StaticCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
496 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
497 => null,
|
|
498 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
499 => function ($stackPos) {
|
|
$this->semValue = new Name($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
500 => function ($stackPos) {
|
|
$this->semValue = new Name\FullyQualified(substr($this->semStack[$stackPos-(1-1)], 1), $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
501 => function ($stackPos) {
|
|
$this->semValue = new Name\Relative(substr($this->semStack[$stackPos-(1-1)], 10), $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
502 => null,
|
|
503 => null,
|
|
504 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
505 => function ($stackPos) {
|
|
$this->semValue = new Expr\Error($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])); $this->errorState = 2;
|
|
},
|
|
506 => null,
|
|
507 => null,
|
|
508 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
509 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
510 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
511 => function ($stackPos) {
|
|
$this->semValue = array(new Node\InterpolatedStringPart(Scalar\String_::parseEscapeSequences($this->semStack[$stackPos-(1-1)], '`'), $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])));
|
|
},
|
|
512 => function ($stackPos) {
|
|
foreach ($this->semStack[$stackPos-(1-1)] as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '`', true); } }; $this->semValue = $this->semStack[$stackPos-(1-1)];
|
|
},
|
|
513 => function ($stackPos) {
|
|
$this->semValue = array();
|
|
},
|
|
514 => null,
|
|
515 => function ($stackPos) {
|
|
$this->semValue = new Expr\ConstFetch($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
516 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\Line($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
517 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\File($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
518 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\Dir($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
519 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\Class_($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
520 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\Trait_($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
521 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\Method($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
522 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\Function_($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
523 => function ($stackPos) {
|
|
$this->semValue = new Scalar\MagicConst\Namespace_($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
524 => function ($stackPos) {
|
|
$this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
525 => function ($stackPos) {
|
|
$this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(5-1)], $this->semStack[$stackPos-(5-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(5-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
526 => function ($stackPos) {
|
|
$this->semValue = new Expr\ClassConstFetch($this->semStack[$stackPos-(3-1)], new Expr\Error($this->getAttributes($this->tokenStartStack[$stackPos-(3-3)], $this->tokenEndStack[$stackPos-(3-3)])), $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos])); $this->errorState = 2;
|
|
},
|
|
527 => function ($stackPos) {
|
|
$attrs = $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_SHORT;
|
|
$this->semValue = new Expr\Array_($this->semStack[$stackPos-(3-2)], $attrs);
|
|
},
|
|
528 => function ($stackPos) {
|
|
$attrs = $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]); $attrs['kind'] = Expr\Array_::KIND_LONG;
|
|
$this->semValue = new Expr\Array_($this->semStack[$stackPos-(4-3)], $attrs);
|
|
$this->createdArrays->attach($this->semValue);
|
|
},
|
|
529 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(1-1)]; $this->createdArrays->attach($this->semValue);
|
|
},
|
|
530 => function ($stackPos) {
|
|
$this->semValue = Scalar\String_::fromString($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
531 => function ($stackPos) {
|
|
$attrs = $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]); $attrs['kind'] = Scalar\String_::KIND_DOUBLE_QUOTED;
|
|
foreach ($this->semStack[$stackPos-(3-2)] as $s) { if ($s instanceof Node\InterpolatedStringPart) { $s->value = Node\Scalar\String_::parseEscapeSequences($s->value, '"', true); } }; $this->semValue = new Scalar\InterpolatedString($this->semStack[$stackPos-(3-2)], $attrs);
|
|
},
|
|
532 => function ($stackPos) {
|
|
$this->semValue = $this->parseLNumber($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]), $this->phpVersion->allowsInvalidOctals());
|
|
},
|
|
533 => function ($stackPos) {
|
|
$this->semValue = Scalar\Float_::fromString($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
534 => null,
|
|
535 => null,
|
|
536 => null,
|
|
537 => function ($stackPos) {
|
|
$this->semValue = $this->parseDocString($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]), $this->getAttributes($this->tokenStartStack[$stackPos-(3-3)], $this->tokenEndStack[$stackPos-(3-3)]), true);
|
|
},
|
|
538 => function ($stackPos) {
|
|
$this->semValue = $this->parseDocString($this->semStack[$stackPos-(2-1)], '', $this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]), $this->getAttributes($this->tokenStartStack[$stackPos-(2-2)], $this->tokenEndStack[$stackPos-(2-2)]), true);
|
|
},
|
|
539 => function ($stackPos) {
|
|
$this->semValue = $this->parseDocString($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-2)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]), $this->getAttributes($this->tokenStartStack[$stackPos-(3-3)], $this->tokenEndStack[$stackPos-(3-3)]), true);
|
|
},
|
|
540 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
541 => null,
|
|
542 => null,
|
|
543 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
544 => null,
|
|
545 => null,
|
|
546 => null,
|
|
547 => null,
|
|
548 => null,
|
|
549 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
550 => null,
|
|
551 => null,
|
|
552 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
553 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
554 => null,
|
|
555 => function ($stackPos) {
|
|
$this->semValue = new Expr\MethodCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
556 => function ($stackPos) {
|
|
$this->semValue = new Expr\NullsafeMethodCall($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->semStack[$stackPos-(4-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
557 => function ($stackPos) {
|
|
$this->semValue = null;
|
|
},
|
|
558 => null,
|
|
559 => null,
|
|
560 => null,
|
|
561 => function ($stackPos) {
|
|
$this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
562 => function ($stackPos) {
|
|
$this->semValue = new Expr\NullsafePropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
563 => null,
|
|
564 => function ($stackPos) {
|
|
$this->semValue = new Expr\Variable($this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
565 => function ($stackPos) {
|
|
$this->semValue = new Expr\Variable($this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
566 => function ($stackPos) {
|
|
$this->semValue = new Expr\Variable(new Expr\Error($this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos])), $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos])); $this->errorState = 2;
|
|
},
|
|
567 => function ($stackPos) {
|
|
$var = $this->semStack[$stackPos-(1-1)]->name; $this->semValue = \is_string($var) ? new Node\VarLikeIdentifier($var, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])) : $var;
|
|
},
|
|
568 => function ($stackPos) {
|
|
$this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
569 => null,
|
|
570 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
571 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
572 => function ($stackPos) {
|
|
$this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
573 => function ($stackPos) {
|
|
$this->semValue = new Expr\NullsafePropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
574 => function ($stackPos) {
|
|
$this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
575 => function ($stackPos) {
|
|
$this->semValue = new Expr\StaticPropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
576 => null,
|
|
577 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
578 => null,
|
|
579 => null,
|
|
580 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
581 => null,
|
|
582 => function ($stackPos) {
|
|
$this->semValue = new Expr\Error($this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos])); $this->errorState = 2;
|
|
},
|
|
583 => function ($stackPos) {
|
|
$this->semValue = new Expr\List_($this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos])); $this->semValue->setAttribute('kind', Expr\List_::KIND_LIST);
|
|
$this->postprocessList($this->semValue);
|
|
},
|
|
584 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(1-1)]; $end = count($this->semValue)-1; if ($this->semValue[$end]->value instanceof Expr\Error) array_pop($this->semValue);
|
|
},
|
|
585 => null,
|
|
586 => function ($stackPos) {
|
|
/* do nothing -- prevent default action of $$=$this->semStack[$1]. See $551. */
|
|
},
|
|
587 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(3-1)][] = $this->semStack[$stackPos-(3-3)]; $this->semValue = $this->semStack[$stackPos-(3-1)];
|
|
},
|
|
588 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
589 => function ($stackPos) {
|
|
$this->semValue = new Node\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
590 => function ($stackPos) {
|
|
$this->semValue = new Node\ArrayItem($this->semStack[$stackPos-(2-2)], null, true, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
591 => function ($stackPos) {
|
|
$this->semValue = new Node\ArrayItem($this->semStack[$stackPos-(1-1)], null, false, $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
592 => function ($stackPos) {
|
|
$this->semValue = new Node\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
593 => function ($stackPos) {
|
|
$this->semValue = new Node\ArrayItem($this->semStack[$stackPos-(4-4)], $this->semStack[$stackPos-(4-1)], true, $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
594 => function ($stackPos) {
|
|
$this->semValue = new Node\ArrayItem($this->semStack[$stackPos-(3-3)], $this->semStack[$stackPos-(3-1)], false, $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
595 => function ($stackPos) {
|
|
$this->semValue = new Node\ArrayItem($this->semStack[$stackPos-(2-2)], null, false, $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]), true);
|
|
},
|
|
596 => function ($stackPos) {
|
|
/* Create an Error node now to remember the position. We'll later either report an error,
|
|
or convert this into a null element, depending on whether this is a creation or destructuring context. */
|
|
$attrs = $this->createEmptyElemAttributes($this->tokenPos);
|
|
$this->semValue = new Node\ArrayItem(new Expr\Error($attrs), null, false, $attrs);
|
|
},
|
|
597 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
598 => function ($stackPos) {
|
|
$this->semStack[$stackPos-(2-1)][] = $this->semStack[$stackPos-(2-2)]; $this->semValue = $this->semStack[$stackPos-(2-1)];
|
|
},
|
|
599 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(1-1)]);
|
|
},
|
|
600 => function ($stackPos) {
|
|
$this->semValue = array($this->semStack[$stackPos-(2-1)], $this->semStack[$stackPos-(2-2)]);
|
|
},
|
|
601 => function ($stackPos) {
|
|
$this->semValue = new Node\InterpolatedStringPart($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
602 => function ($stackPos) {
|
|
$this->semValue = new Expr\Variable($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
603 => null,
|
|
604 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(4-1)], $this->semStack[$stackPos-(4-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(4-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
605 => function ($stackPos) {
|
|
$this->semValue = new Expr\PropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
606 => function ($stackPos) {
|
|
$this->semValue = new Expr\NullsafePropertyFetch($this->semStack[$stackPos-(3-1)], $this->semStack[$stackPos-(3-3)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
607 => function ($stackPos) {
|
|
$this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
608 => function ($stackPos) {
|
|
$this->semValue = new Expr\Variable($this->semStack[$stackPos-(3-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(3-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
609 => function ($stackPos) {
|
|
$this->semValue = new Expr\ArrayDimFetch($this->semStack[$stackPos-(6-2)], $this->semStack[$stackPos-(6-4)], $this->getAttributes($this->tokenStartStack[$stackPos-(6-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
610 => function ($stackPos) {
|
|
$this->semValue = $this->semStack[$stackPos-(3-2)];
|
|
},
|
|
611 => function ($stackPos) {
|
|
$this->semValue = new Scalar\String_($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
612 => function ($stackPos) {
|
|
$this->semValue = $this->parseNumString($this->semStack[$stackPos-(1-1)], $this->getAttributes($this->tokenStartStack[$stackPos-(1-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
613 => function ($stackPos) {
|
|
$this->semValue = $this->parseNumString('-' . $this->semStack[$stackPos-(2-2)], $this->getAttributes($this->tokenStartStack[$stackPos-(2-1)], $this->tokenEndStack[$stackPos]));
|
|
},
|
|
614 => null,
|
|
];
|
|
}
|
|
}
|