From 268330e0aaec7b69fb17d106fad452373453fb40 Mon Sep 17 00:00:00 2001 From: Ioan CHIRIAC Date: Sun, 21 Oct 2018 12:16:58 +0200 Subject: [PATCH] release 3.0.0-prerelease.6 --- RELEASE.md | 6 + dist/php-parser.js | 357 ++++++++------- dist/php-parser.min.js | 8 +- docs/AST.html | 2 +- docs/Array.html | 2 +- docs/Assign.html | 2 +- docs/Bin.html | 2 +- docs/Block.html | 2 +- docs/Boolean.html | 2 +- docs/Break.html | 2 +- docs/Call.html | 2 +- docs/Case.html | 2 +- docs/Cast.html | 2 +- docs/Catch.html | 2 +- docs/Class.html | 2 +- docs/ClassConstant.html | 2 +- docs/ClassReference.html | 2 +- docs/Clone.html | 2 +- docs/Closure.html | 2 +- docs/Comment.html | 2 +- docs/CommentBlock.html | 2 +- docs/CommentLine.html | 2 +- docs/ConstRef.html | 2 +- docs/Constant.html | 2 +- docs/Continue.html | 2 +- docs/Declaration.html | 2 +- docs/Declare.html | 2 +- docs/Do.html | 2 +- docs/Echo.html | 2 +- docs/Empty.html | 2 +- docs/Encapsed.html | 2 +- docs/Entry.html | 2 +- docs/Error.html | 2 +- docs/Eval.html | 2 +- docs/Exit.html | 2 +- docs/Expression.html | 2 +- docs/ExpressionStatement.html | 2 +- docs/For.html | 2 +- docs/Foreach.html | 2 +- docs/Function.html | 2 +- docs/Global_.html | 2 +- docs/Goto.html | 2 +- docs/Halt.html | 2 +- docs/Identifier.html | 2 +- docs/If.html | 2 +- docs/Include.html | 2 +- docs/Inline.html | 2 +- docs/Interface.html | 2 +- docs/Isset.html | 2 +- docs/Label.html | 2 +- docs/List.html | 2 +- docs/Literal.html | 2 +- docs/Location.html | 2 +- docs/Lookup.html | 2 +- docs/Magic.html | 2 +- docs/Method.html | 2 +- docs/Namespace.html | 2 +- docs/New.html | 2 +- docs/Node.html | 2 +- docs/NowDoc.html | 2 +- docs/Number.html | 2 +- docs/OffsetLookup.html | 2 +- docs/Operation.html | 2 +- docs/Parameter.html | 2 +- docs/ParentReference.html | 2 +- docs/Position.html | 2 +- docs/Post.html | 2 +- docs/Pre.html | 2 +- docs/Print.html | 2 +- docs/Program.html | 2 +- docs/Property.html | 2 +- docs/PropertyLookup.html | 2 +- docs/Reference.html | 2 +- docs/RetIf.html | 2 +- docs/Return.html | 2 +- docs/SelfReference.html | 2 +- docs/Silent.html | 2 +- docs/Statement.html | 2 +- docs/Static.html | 2 +- docs/StaticLookup.html | 2 +- docs/StaticReference.html | 2 +- docs/String.html | 2 +- docs/Switch.html | 2 +- docs/Sys.html | 2 +- docs/Throw.html | 2 +- docs/Trait.html | 2 +- docs/TraitAlias.html | 2 +- docs/TraitPrecedence.html | 2 +- docs/TraitUse.html | 2 +- docs/Try.html | 2 +- docs/TypeReference.html | 642 +++++++++++++++++++++++++++ docs/Unary.html | 2 +- docs/Unset.html | 2 +- docs/UseGroup.html | 2 +- docs/UseItem.html | 2 +- docs/Variable.html | 2 +- docs/While.html | 2 +- docs/Yield.html | 2 +- docs/YieldFrom.html | 2 +- docs/ast.js.html | 3 +- docs/ast_array.js.html | 2 +- docs/ast_assign.js.html | 2 +- docs/ast_bin.js.html | 2 +- docs/ast_block.js.html | 2 +- docs/ast_boolean.js.html | 2 +- docs/ast_break.js.html | 2 +- docs/ast_call.js.html | 2 +- docs/ast_case.js.html | 2 +- docs/ast_cast.js.html | 2 +- docs/ast_catch.js.html | 2 +- docs/ast_class.js.html | 2 +- docs/ast_classconstant.js.html | 2 +- docs/ast_classreference.js.html | 2 +- docs/ast_clone.js.html | 2 +- docs/ast_closure.js.html | 2 +- docs/ast_comment.js.html | 2 +- docs/ast_commentblock.js.html | 2 +- docs/ast_commentline.js.html | 2 +- docs/ast_constant.js.html | 2 +- docs/ast_constref.js.html | 2 +- docs/ast_continue.js.html | 2 +- docs/ast_declaration.js.html | 2 +- docs/ast_declare.js.html | 2 +- docs/ast_do.js.html | 2 +- docs/ast_echo.js.html | 2 +- docs/ast_empty.js.html | 2 +- docs/ast_encapsed.js.html | 2 +- docs/ast_entry.js.html | 2 +- docs/ast_error.js.html | 2 +- docs/ast_eval.js.html | 2 +- docs/ast_exit.js.html | 2 +- docs/ast_expression.js.html | 2 +- docs/ast_expressionstatement.js.html | 2 +- docs/ast_for.js.html | 2 +- docs/ast_foreach.js.html | 2 +- docs/ast_function.js.html | 2 +- docs/ast_global.js.html | 2 +- docs/ast_goto.js.html | 2 +- docs/ast_halt.js.html | 2 +- docs/ast_identifier.js.html | 2 +- docs/ast_if.js.html | 2 +- docs/ast_include.js.html | 2 +- docs/ast_inline.js.html | 2 +- docs/ast_interface.js.html | 2 +- docs/ast_isset.js.html | 2 +- docs/ast_label.js.html | 2 +- docs/ast_list.js.html | 2 +- docs/ast_literal.js.html | 2 +- docs/ast_location.js.html | 2 +- docs/ast_lookup.js.html | 2 +- docs/ast_magic.js.html | 2 +- docs/ast_method.js.html | 2 +- docs/ast_namespace.js.html | 2 +- docs/ast_new.js.html | 2 +- docs/ast_node.js.html | 2 +- docs/ast_nowdoc.js.html | 2 +- docs/ast_number.js.html | 2 +- docs/ast_offsetlookup.js.html | 2 +- docs/ast_operation.js.html | 2 +- docs/ast_parameter.js.html | 2 +- docs/ast_parentreference.js.html | 2 +- docs/ast_position.js.html | 2 +- docs/ast_post.js.html | 2 +- docs/ast_pre.js.html | 2 +- docs/ast_print.js.html | 2 +- docs/ast_program.js.html | 2 +- docs/ast_property.js.html | 2 +- docs/ast_propertylookup.js.html | 2 +- docs/ast_reference.js.html | 2 +- docs/ast_retif.js.html | 2 +- docs/ast_return.js.html | 2 +- docs/ast_selfreference.js.html | 2 +- docs/ast_silent.js.html | 2 +- docs/ast_statement.js.html | 2 +- docs/ast_static.js.html | 2 +- docs/ast_staticlookup.js.html | 2 +- docs/ast_staticreference.js.html | 2 +- docs/ast_string.js.html | 2 +- docs/ast_switch.js.html | 2 +- docs/ast_sys.js.html | 2 +- docs/ast_throw.js.html | 2 +- docs/ast_trait.js.html | 2 +- docs/ast_traitalias.js.html | 2 +- docs/ast_traitprecedence.js.html | 2 +- docs/ast_traituse.js.html | 2 +- docs/ast_try.js.html | 2 +- docs/ast_typereference.js.html | 167 +++++++ docs/ast_unary.js.html | 2 +- docs/ast_unset.js.html | 2 +- docs/ast_usegroup.js.html | 2 +- docs/ast_useitem.js.html | 2 +- docs/ast_variable.js.html | 2 +- docs/ast_variadic.js.html | 2 +- docs/ast_while.js.html | 2 +- docs/ast_yield.js.html | 2 +- docs/ast_yieldfrom.js.html | 2 +- docs/engine.html | 2 +- docs/global.html | 2 +- docs/index.html | 2 +- docs/index.js.html | 2 +- docs/lexer.html | 2 +- docs/lexer.js.html | 2 +- docs/lexer_comments.js.html | 2 +- docs/lexer_strings.js.html | 2 +- docs/parser.html | 2 +- docs/parser.js.html | 2 +- docs/parser_array.js.html | 2 +- docs/parser_class.js.html | 2 +- docs/parser_comment.js.html | 2 +- docs/parser_expr.js.html | 2 +- docs/parser_function.js.html | 39 +- docs/parser_if.js.html | 2 +- docs/parser_loops.js.html | 2 +- docs/parser_main.js.html | 2 +- docs/parser_namespace.js.html | 2 +- docs/parser_scalar.js.html | 2 +- docs/parser_statement.js.html | 2 +- docs/parser_switch.js.html | 2 +- docs/parser_try.js.html | 2 +- docs/parser_utils.js.html | 2 +- docs/parser_variable.js.html | 2 +- docs/tokens.js.html | 2 +- docs/tutorial-AST_.html | 2 +- docs/tutorial-Engine_.html | 2 +- docs/tutorial-Options.html | 2 +- docs/tutorial-Parser_.html | 2 +- docs/variadic.html | 2 +- package.json | 2 +- 228 files changed, 1265 insertions(+), 399 deletions(-) create mode 100644 docs/TypeReference.html create mode 100644 docs/ast_typereference.js.html diff --git a/RELEASE.md b/RELEASE.md index 1d53d32db..c29d1071c 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,5 +1,11 @@ # Releases +## 3.0.0-prerelease.6 : (2018-10-21) + - fix #113 : Unhandled native identifiers + - fix #183 : `static` parsed as constref + - fix #188 : `constref` vs `identifier` + - impl #196 : identifier for function/method name + ## 3.0.0-alpha3 : (2018-08-15) - fix #168 : End location of `if` without semicolon - impl #147 : Node informations about Binary and unicode strings diff --git a/dist/php-parser.js b/dist/php-parser.js index 29bca130e..0cf8f856a 100644 --- a/dist/php-parser.js +++ b/dist/php-parser.js @@ -2,7 +2,7 @@ * * Package: php-parser * Parse PHP code and returns its AST - * Build: d135007a07b704e70a2d - 2018-10-21 + * Build: 9f51169b9d26feecb380 - 2018-10-21 * License: BSD-3-Clause * Author: Ioan CHIRIAC * @@ -100,7 +100,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ /******/ /******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 128); +/******/ return __webpack_require__(__webpack_require__.s = 129); /******/ }) /************************************************************************/ /******/ ([ @@ -350,18 +350,20 @@ module.exports = Statement.extends(KIND, function Sys(kind, args, docs, location */ -var Expr = __webpack_require__(2); -var KIND = "operation"; +var Node = __webpack_require__(1); +var KIND = "reference"; /** - * Defines binary operations - * @constructor Operation - * @extends {Expression} + * Defines a reference node + * @constructor Reference + * @extends {Node} */ -module.exports = Expr.extends(KIND, function Operation(kind, docs, location) { - Expr.apply(this, [kind || KIND, docs, location]); +var Reference = Node.extends(KIND, function Reference(kind, docs, location) { + Node.apply(this, [kind || KIND, docs, location]); }); +module.exports = Reference; + /***/ }), /* 7 */ /***/ (function(module, exports, __webpack_require__) { @@ -374,20 +376,18 @@ module.exports = Expr.extends(KIND, function Operation(kind, docs, location) { */ -var Node = __webpack_require__(1); -var KIND = "reference"; +var Expr = __webpack_require__(2); +var KIND = "operation"; /** - * Defines a reference node - * @constructor Reference - * @extends {Node} + * Defines binary operations + * @constructor Operation + * @extends {Expression} */ -var Reference = Node.extends(KIND, function Reference(kind, docs, location) { - Node.apply(this, [kind || KIND, docs, location]); +module.exports = Expr.extends(KIND, function Operation(kind, docs, location) { + Expr.apply(this, [kind || KIND, docs, location]); }); -module.exports = Reference; - /***/ }), /* 8 */ /***/ (function(module, exports, __webpack_require__) { @@ -794,7 +794,7 @@ module.exports = Sys.extends(KIND, function Unset(args, docs, location) { */ -var Operation = __webpack_require__(6); +var Operation = __webpack_require__(7); var KIND = "unary"; /** @@ -822,6 +822,36 @@ module.exports = Operation.extends(KIND, function Unary(type, what, docs, locati */ +var Reference = __webpack_require__(6); +var KIND = "typereference"; + +/** + * Defines a class reference node + * @constructor TypeReference + * @extends {Reference} + * @property {string} name + */ +var TypeReference = Reference.extends(KIND, function TypeReference(name, docs, location) { + Reference.apply(this, [KIND, docs, location]); + this.name = name; +}); + +TypeReference.types = ["int", "float", "string", "bool", "object", "array"]; + +module.exports = TypeReference; + +/***/ }), +/* 23 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/** + * Copyright (C) 2018 Glayzzle (BSD3 License) + * @authors https://github.com/glayzzle/php-parser/graphs/contributors + * @url http://glayzzle.com + */ + + var Statement = __webpack_require__(0); var KIND = "try"; @@ -841,7 +871,7 @@ module.exports = Statement.extends(KIND, function Try(body, catches, always, doc }); /***/ }), -/* 23 */ +/* 24 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -869,7 +899,7 @@ module.exports = Node.extends(KIND, function TraitUse(traits, adaptations, docs, }); /***/ }), -/* 24 */ +/* 25 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -899,7 +929,7 @@ module.exports = Node.extends(KIND, function TraitPrecedence(trait, method, inst }); /***/ }), -/* 25 */ +/* 26 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -945,7 +975,7 @@ module.exports = Node.extends(KIND, function TraitAlias(trait, method, as, flags }); /***/ }), -/* 26 */ +/* 27 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -975,7 +1005,7 @@ module.exports = Declaration.extends(KIND, function Trait(name, ext, impl, body, }); /***/ }), -/* 27 */ +/* 28 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1001,7 +1031,7 @@ module.exports = Statement.extends(KIND, function Throw(what, docs, location) { }); /***/ }), -/* 28 */ +/* 29 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1031,7 +1061,7 @@ module.exports = Statement.extends(KIND, function Switch(test, body, shortForm, }); /***/ }), -/* 29 */ +/* 30 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1060,7 +1090,7 @@ module.exports = Literal.extends(KIND, function String(isDoubleQuote, value, uni }); /***/ }), -/* 30 */ +/* 31 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1071,7 +1101,7 @@ module.exports = Literal.extends(KIND, function String(isDoubleQuote, value, uni */ -var Reference = __webpack_require__(7); +var Reference = __webpack_require__(6); var KIND = "staticreference"; /** @@ -1085,7 +1115,7 @@ var StaticReference = Reference.extends(KIND, function StaticReference(docs, loc module.exports = StaticReference; /***/ }), -/* 31 */ +/* 32 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1109,7 +1139,7 @@ module.exports = Lookup.extends(KIND, function StaticLookup(what, offset, docs, }); /***/ }), -/* 32 */ +/* 33 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1135,7 +1165,7 @@ module.exports = Statement.extends(KIND, function Static(items, docs, location) }); /***/ }), -/* 33 */ +/* 34 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1161,7 +1191,7 @@ module.exports = Statement.extends(KIND, function Silent(expr, docs, location) { }); /***/ }), -/* 34 */ +/* 35 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1172,7 +1202,7 @@ module.exports = Statement.extends(KIND, function Silent(expr, docs, location) { */ -var Reference = __webpack_require__(7); +var Reference = __webpack_require__(6); var KIND = "selfreference"; /** @@ -1186,7 +1216,7 @@ var SelfReference = Reference.extends(KIND, function SelfReference(docs, locatio module.exports = SelfReference; /***/ }), -/* 35 */ +/* 36 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1212,7 +1242,7 @@ module.exports = Node.extends(KIND, function Return(expr, docs, location) { }); /***/ }), -/* 36 */ +/* 37 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1242,7 +1272,7 @@ module.exports = Statement.extends(KIND, function RetIf(test, trueExpr, falseExp }); /***/ }), -/* 37 */ +/* 38 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1266,7 +1296,7 @@ module.exports = Lookup.extends(KIND, function PropertyLookup(what, offset, docs }); /***/ }), -/* 38 */ +/* 39 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1296,7 +1326,7 @@ module.exports = Declaration.extends(KIND, function Property(name, value, flags, }); /***/ }), -/* 39 */ +/* 40 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1330,7 +1360,7 @@ module.exports = Block.extends(KIND, function Program(children, errors, comments }); /***/ }), -/* 40 */ +/* 41 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1354,7 +1384,7 @@ module.exports = Sys.extends(KIND, function Print(args, docs, location) { }); /***/ }), -/* 41 */ +/* 42 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1365,7 +1395,7 @@ module.exports = Sys.extends(KIND, function Print(args, docs, location) { */ -var Operation = __webpack_require__(6); +var Operation = __webpack_require__(7); var KIND = "pre"; /** @@ -1382,7 +1412,7 @@ module.exports = Operation.extends(KIND, function Pre(type, what, docs, location }); /***/ }), -/* 42 */ +/* 43 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1393,7 +1423,7 @@ module.exports = Operation.extends(KIND, function Pre(type, what, docs, location */ -var Operation = __webpack_require__(6); +var Operation = __webpack_require__(7); var KIND = "post"; /** @@ -1410,7 +1440,7 @@ module.exports = Operation.extends(KIND, function Post(type, what, docs, locatio }); /***/ }), -/* 43 */ +/* 44 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1421,7 +1451,7 @@ module.exports = Operation.extends(KIND, function Post(type, what, docs, locatio */ -var Reference = __webpack_require__(7); +var Reference = __webpack_require__(6); var KIND = "parentreference"; /** @@ -1435,7 +1465,7 @@ var ParentReference = Reference.extends(KIND, function ParentReference(docs, loc module.exports = ParentReference; /***/ }), -/* 44 */ +/* 45 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1469,7 +1499,7 @@ module.exports = Declaration.extends(KIND, function Parameter(name, type, value, }); /***/ }), -/* 45 */ +/* 46 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1493,7 +1523,7 @@ module.exports = Lookup.extends(KIND, function OffsetLookup(what, offset, docs, }); /***/ }), -/* 46 */ +/* 47 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1517,7 +1547,7 @@ module.exports = Literal.extends(KIND, function Number(value, raw, docs, locatio }); /***/ }), -/* 47 */ +/* 48 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1546,7 +1576,7 @@ module.exports = Literal.extends(KIND, function Nowdoc(value, raw, label, quote, }); /***/ }), -/* 48 */ +/* 49 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1574,7 +1604,7 @@ module.exports = Statement.extends(KIND, function New(what, args, docs, location }); /***/ }), -/* 49 */ +/* 50 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1602,7 +1632,7 @@ module.exports = Block.extends(KIND, function Namespace(name, children, withBrac }); /***/ }), -/* 50 */ +/* 51 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1631,7 +1661,7 @@ module.exports = fn.extends(KIND, function Method() { }); /***/ }), -/* 51 */ +/* 52 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1655,7 +1685,7 @@ module.exports = Literal.extends(KIND, function Magic(value, raw, docs, location }); /***/ }), -/* 52 */ +/* 53 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1681,7 +1711,7 @@ module.exports = Sys.extends(KIND, function List(items, shortForm, docs, locatio }); /***/ }), -/* 53 */ +/* 54 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1707,7 +1737,7 @@ module.exports = Node.extends(KIND, function Label(name, docs, location) { }); /***/ }), -/* 54 */ +/* 55 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1731,7 +1761,7 @@ module.exports = Sys.extends(KIND, function Isset(args, docs, location) { }); /***/ }), -/* 55 */ +/* 56 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1759,7 +1789,7 @@ module.exports = Declaration.extends(KIND, function Interface(name, ext, body, d }); /***/ }), -/* 56 */ +/* 57 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1783,7 +1813,7 @@ module.exports = Literal.extends(KIND, function Inline(value, raw, docs, locatio }); /***/ }), -/* 57 */ +/* 58 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1813,7 +1843,7 @@ module.exports = Statement.extends(KIND, function Include(once, require, target, }); /***/ }), -/* 58 */ +/* 59 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1845,7 +1875,7 @@ module.exports = Statement.extends(KIND, function If(test, body, alternate, shor }); /***/ }), -/* 59 */ +/* 60 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1873,7 +1903,7 @@ var Identifier = Node.extends(KIND, function Identifier(name, docs, location) { module.exports = Identifier; /***/ }), -/* 60 */ +/* 61 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1900,7 +1930,7 @@ module.exports = Statement.extends(KIND, function Halt(after, docs, location) { }); /***/ }), -/* 61 */ +/* 62 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1927,7 +1957,7 @@ module.exports = Statement.extends(KIND, function Goto(label, docs, location) { }); /***/ }), -/* 62 */ +/* 63 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1953,7 +1983,7 @@ module.exports = Statement.extends(KIND, function Global(items, docs, location) }); /***/ }), -/* 63 */ +/* 64 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1988,7 +2018,7 @@ module.exports = Statement.extends(KIND, function Foreach(source, key, value, bo }); /***/ }), -/* 64 */ +/* 65 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2023,7 +2053,7 @@ module.exports = Statement.extends(KIND, function For(init, test, increment, bod }); /***/ }), -/* 65 */ +/* 66 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2049,7 +2079,7 @@ module.exports = Statement.extends(KIND, function ExpressionStatement(expr, docs }); /***/ }), -/* 66 */ +/* 67 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2077,7 +2107,7 @@ module.exports = Statement.extends(KIND, function Exit(status, useDie, docs, loc }); /***/ }), -/* 67 */ +/* 68 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2103,7 +2133,7 @@ module.exports = Statement.extends(KIND, function Eval(source, docs, location) { }); /***/ }), -/* 68 */ +/* 69 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2135,7 +2165,7 @@ module.exports = Node.extends(KIND, function Error(message, token, line, expecte }); /***/ }), -/* 69 */ +/* 70 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2163,7 +2193,7 @@ module.exports = Node.extends(KIND, function Entry(key, value, docs, location) { }); /***/ }), -/* 70 */ +/* 71 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2235,7 +2265,7 @@ Encapsed.TYPE_OFFSET = "offset"; module.exports = Encapsed; /***/ }), -/* 71 */ +/* 72 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2259,7 +2289,7 @@ module.exports = Sys.extends(KIND, function Empty(args, docs, location) { }); /***/ }), -/* 72 */ +/* 73 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2285,7 +2315,7 @@ module.exports = Sys.extends(KIND, function Echo(args, shortForm, docs, location }); /***/ }), -/* 73 */ +/* 74 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2313,7 +2343,7 @@ module.exports = Statement.extends(KIND, function Do(test, body, docs, location) }); /***/ }), -/* 74 */ +/* 75 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2383,7 +2413,7 @@ Declare.MODE_NONE = "none"; module.exports = Declare; /***/ }), -/* 75 */ +/* 76 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2409,7 +2439,7 @@ module.exports = Node.extends(KIND, function Continue(level, docs, location) { }); /***/ }), -/* 76 */ +/* 77 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2435,7 +2465,7 @@ module.exports = Expr.extends(KIND, function ConstRef(identifier, docs, location }); /***/ }), -/* 77 */ +/* 78 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2459,7 +2489,7 @@ module.exports = Comment.extends(KIND, function CommentLine(value, docs, locatio }); /***/ }), -/* 78 */ +/* 79 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2483,7 +2513,7 @@ module.exports = Comment.extends(KIND, function CommentBlock(value, docs, locati }); /***/ }), -/* 79 */ +/* 80 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2521,7 +2551,7 @@ module.exports = Statement.extends(KIND, function Closure(args, byref, uses, typ }); /***/ }), -/* 80 */ +/* 81 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2547,7 +2577,7 @@ module.exports = Statement.extends(KIND, function Clone(what, docs, location) { }); /***/ }), -/* 81 */ +/* 82 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2558,7 +2588,7 @@ module.exports = Statement.extends(KIND, function Clone(what, docs, location) { */ -var Reference = __webpack_require__(7); +var Reference = __webpack_require__(6); var KIND = "classreference"; /** @@ -2608,7 +2638,7 @@ ClassReference.RELATIVE_NAME = "rn"; module.exports = ClassReference; /***/ }), -/* 82 */ +/* 83 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2636,7 +2666,7 @@ module.exports = Constant.extends(KIND, function ClassConstant(name, value, flag }); /***/ }), -/* 83 */ +/* 84 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2671,7 +2701,7 @@ module.exports = Declaration.extends(KIND, function Class(name, ext, impl, body, }); /***/ }), -/* 84 */ +/* 85 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2702,7 +2732,7 @@ module.exports = Statement.extends(KIND, function Catch(body, what, variable, do }); /***/ }), -/* 85 */ +/* 86 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2713,7 +2743,7 @@ module.exports = Statement.extends(KIND, function Catch(body, what, variable, do */ -var Operation = __webpack_require__(6); +var Operation = __webpack_require__(7); var KIND = "cast"; /** @@ -2732,7 +2762,7 @@ module.exports = Operation.extends(KIND, function Cast(type, raw, what, docs, lo }); /***/ }), -/* 86 */ +/* 87 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2760,7 +2790,7 @@ module.exports = Node.extends(KIND, function Case(test, body, docs, location) { }); /***/ }), -/* 87 */ +/* 88 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2788,7 +2818,7 @@ module.exports = Statement.extends(KIND, function Call(what, args, docs, locatio }); /***/ }), -/* 88 */ +/* 89 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2814,7 +2844,7 @@ module.exports = Node.extends(KIND, function Break(level, docs, location) { }); /***/ }), -/* 89 */ +/* 90 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2838,7 +2868,7 @@ module.exports = Literal.extends(KIND, function Boolean(value, raw, docs, locati }); /***/ }), -/* 90 */ +/* 91 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2849,7 +2879,7 @@ module.exports = Literal.extends(KIND, function Boolean(value, raw, docs, locati */ -var Operation = __webpack_require__(6); +var Operation = __webpack_require__(7); var KIND = "bin"; /** * Binary operations @@ -2867,7 +2897,7 @@ module.exports = Operation.extends(KIND, function Bin(type, left, right, docs, l }); /***/ }), -/* 91 */ +/* 92 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2897,7 +2927,7 @@ module.exports = Statement.extends(KIND, function Assign(left, right, operator, }); /***/ }), -/* 92 */ +/* 93 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2943,7 +2973,7 @@ module.exports = Expr.extends(KIND, function Array(shortForm, items, docs, locat }); /***/ }), -/* 93 */ +/* 94 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2971,7 +3001,7 @@ var Position = function Position(line, column, offset) { module.exports = Position; /***/ }), -/* 94 */ +/* 95 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2999,7 +3029,7 @@ var Location = function Location(source, start, end) { module.exports = Location; /***/ }), -/* 95 */ +/* 96 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3010,8 +3040,8 @@ module.exports = Location; */ -var Location = __webpack_require__(94); -var Position = __webpack_require__(93); +var Location = __webpack_require__(95); +var Position = __webpack_require__(94); /** * ## Class hierarchy @@ -3311,14 +3341,14 @@ AST.prototype.prepare = function (kind, docs, parser) { }; // Define all AST nodes -[__webpack_require__(92), __webpack_require__(91), __webpack_require__(90), __webpack_require__(9), __webpack_require__(89), __webpack_require__(88), __webpack_require__(87), __webpack_require__(86), __webpack_require__(85), __webpack_require__(84), __webpack_require__(83), __webpack_require__(82), __webpack_require__(81), __webpack_require__(80), __webpack_require__(79), __webpack_require__(10), __webpack_require__(78), __webpack_require__(77), __webpack_require__(12), __webpack_require__(76), __webpack_require__(75), __webpack_require__(3), __webpack_require__(74), __webpack_require__(73), __webpack_require__(72), __webpack_require__(71), __webpack_require__(70), __webpack_require__(69), __webpack_require__(68), __webpack_require__(67), __webpack_require__(66), __webpack_require__(2), __webpack_require__(65), __webpack_require__(64), __webpack_require__(63), __webpack_require__(11), __webpack_require__(62), __webpack_require__(61), __webpack_require__(60), __webpack_require__(59), __webpack_require__(58), __webpack_require__(57), __webpack_require__(56), __webpack_require__(55), __webpack_require__(54), __webpack_require__(53), __webpack_require__(52), __webpack_require__(4), __webpack_require__(8), __webpack_require__(51), __webpack_require__(50), __webpack_require__(49), __webpack_require__(48), __webpack_require__(1), __webpack_require__(47), __webpack_require__(46), __webpack_require__(45), __webpack_require__(6), __webpack_require__(44), __webpack_require__(43), __webpack_require__(42), __webpack_require__(41), __webpack_require__(40), __webpack_require__(39), __webpack_require__(38), __webpack_require__(37), __webpack_require__(7), __webpack_require__(36), __webpack_require__(35), __webpack_require__(34), __webpack_require__(33), __webpack_require__(0), __webpack_require__(32), __webpack_require__(31), __webpack_require__(30), __webpack_require__(29), __webpack_require__(28), __webpack_require__(5), __webpack_require__(27), __webpack_require__(26), __webpack_require__(25), __webpack_require__(24), __webpack_require__(23), __webpack_require__(22), __webpack_require__(21), __webpack_require__(20), __webpack_require__(19), __webpack_require__(18), __webpack_require__(17), __webpack_require__(16), __webpack_require__(15), __webpack_require__(14), __webpack_require__(13)].forEach(function (ctor) { +[__webpack_require__(93), __webpack_require__(92), __webpack_require__(91), __webpack_require__(9), __webpack_require__(90), __webpack_require__(89), __webpack_require__(88), __webpack_require__(87), __webpack_require__(86), __webpack_require__(85), __webpack_require__(84), __webpack_require__(83), __webpack_require__(82), __webpack_require__(81), __webpack_require__(80), __webpack_require__(10), __webpack_require__(79), __webpack_require__(78), __webpack_require__(12), __webpack_require__(77), __webpack_require__(76), __webpack_require__(3), __webpack_require__(75), __webpack_require__(74), __webpack_require__(73), __webpack_require__(72), __webpack_require__(71), __webpack_require__(70), __webpack_require__(69), __webpack_require__(68), __webpack_require__(67), __webpack_require__(2), __webpack_require__(66), __webpack_require__(65), __webpack_require__(64), __webpack_require__(11), __webpack_require__(63), __webpack_require__(62), __webpack_require__(61), __webpack_require__(60), __webpack_require__(59), __webpack_require__(58), __webpack_require__(57), __webpack_require__(56), __webpack_require__(55), __webpack_require__(54), __webpack_require__(53), __webpack_require__(4), __webpack_require__(8), __webpack_require__(52), __webpack_require__(51), __webpack_require__(50), __webpack_require__(49), __webpack_require__(1), __webpack_require__(48), __webpack_require__(47), __webpack_require__(46), __webpack_require__(7), __webpack_require__(45), __webpack_require__(44), __webpack_require__(43), __webpack_require__(42), __webpack_require__(41), __webpack_require__(40), __webpack_require__(39), __webpack_require__(38), __webpack_require__(6), __webpack_require__(37), __webpack_require__(36), __webpack_require__(35), __webpack_require__(34), __webpack_require__(0), __webpack_require__(33), __webpack_require__(32), __webpack_require__(31), __webpack_require__(30), __webpack_require__(29), __webpack_require__(5), __webpack_require__(28), __webpack_require__(27), __webpack_require__(26), __webpack_require__(25), __webpack_require__(24), __webpack_require__(23), __webpack_require__(22), __webpack_require__(21), __webpack_require__(20), __webpack_require__(19), __webpack_require__(18), __webpack_require__(17), __webpack_require__(16), __webpack_require__(15), __webpack_require__(14), __webpack_require__(13)].forEach(function (ctor) { AST.prototype[ctor.kind] = ctor; }); module.exports = AST; /***/ }), -/* 96 */ +/* 97 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3608,7 +3638,7 @@ module.exports = { }; /***/ }), -/* 97 */ +/* 98 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3945,7 +3975,7 @@ module.exports = { }; /***/ }), -/* 98 */ +/* 99 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4067,7 +4097,7 @@ module.exports = { }; /***/ }), -/* 99 */ +/* 100 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4113,7 +4143,7 @@ module.exports = { }; /***/ }), -/* 100 */ +/* 101 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4205,7 +4235,7 @@ module.exports = { }; /***/ }), -/* 101 */ +/* 102 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4608,7 +4638,7 @@ module.exports = { }; /***/ }), -/* 102 */ +/* 103 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4907,7 +4937,7 @@ module.exports = { }; /***/ }), -/* 103 */ +/* 104 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5098,7 +5128,7 @@ module.exports = { }; /***/ }), -/* 104 */ +/* 105 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5125,7 +5155,7 @@ module.exports = { }; /***/ }), -/* 105 */ +/* 106 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5295,7 +5325,7 @@ module.exports = { }; /***/ }), -/* 106 */ +/* 107 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5399,7 +5429,7 @@ module.exports = { }; /***/ }), -/* 107 */ +/* 108 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5637,26 +5667,33 @@ module.exports = { * ``` */ read_type: function read_type() { - var result = this.node("classreference"); - switch (this.token) { - case this.tok.T_ARRAY: + var result = this.node("typereference"); + var type = null; + if (this.token === this.tok.T_ARRAY || this.token === this.tok.T_CALLABLE) { + var _type = this.text(); + this.next(); + return result(_type); + } else if (this.token === this.tok.T_STRING) { + var _type2 = this.text(); + var backup = [this.token, this.lexer.getState()]; + this.next(); + if (this.token !== this.tok.T_NS_SEPARATOR && this.ast.typereference.types.indexOf(_type2.toLowerCase()) > -1) { + return result(_type2); + } else { + // rollback a classic namespace + this.lexer.tokens.push(backup); this.next(); - return result(["", "array"], false); - case this.tok.T_NAMESPACE: - case this.tok.T_NS_SEPARATOR: - case this.tok.T_STRING: return this.read_namespace_name(); - case this.tok.T_CALLABLE: - this.next(); - return result(["", "callable"], false); - default: - return null; + } + } else if (this.token === this.tok.T_NAMESPACE || this.token === this.tok.T_NS_SEPARATOR) { + return this.read_namespace_name(); } + return null; } }; /***/ }), -/* 108 */ +/* 109 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6138,7 +6175,7 @@ module.exports = { }; /***/ }), -/* 109 */ +/* 110 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6180,7 +6217,7 @@ module.exports = { }; /***/ }), -/* 110 */ +/* 111 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6626,7 +6663,7 @@ module.exports = { }; /***/ }), -/* 111 */ +/* 112 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6729,7 +6766,7 @@ module.exports = { }; /***/ }), -/* 112 */ +/* 113 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7102,7 +7139,7 @@ parser.prototype.is = function (type) { }; // extends the parser with syntax files -[__webpack_require__(111), __webpack_require__(110), __webpack_require__(109), __webpack_require__(108), __webpack_require__(107), __webpack_require__(106), __webpack_require__(105), __webpack_require__(104), __webpack_require__(103), __webpack_require__(102), __webpack_require__(101), __webpack_require__(100), __webpack_require__(99), __webpack_require__(98), __webpack_require__(97)].forEach(function (ext) { +[__webpack_require__(112), __webpack_require__(111), __webpack_require__(110), __webpack_require__(109), __webpack_require__(108), __webpack_require__(107), __webpack_require__(106), __webpack_require__(105), __webpack_require__(104), __webpack_require__(103), __webpack_require__(102), __webpack_require__(101), __webpack_require__(100), __webpack_require__(99), __webpack_require__(98)].forEach(function (ext) { for (var k in ext) { parser.prototype[k] = ext[k]; } @@ -7111,7 +7148,7 @@ parser.prototype.is = function (type) { module.exports = parser; /***/ }), -/* 113 */ +/* 114 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7189,7 +7226,7 @@ module.exports = { }; /***/ }), -/* 114 */ +/* 115 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7466,7 +7503,7 @@ module.exports = { }; /***/ }), -/* 115 */ +/* 116 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7874,7 +7911,7 @@ module.exports = { }; /***/ }), -/* 116 */ +/* 117 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7980,7 +8017,7 @@ module.exports = { }; /***/ }), -/* 117 */ +/* 118 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8068,7 +8105,7 @@ module.exports = { }; /***/ }), -/* 118 */ +/* 119 */ /***/ (function(module, exports) { // shim for using process in browser @@ -8258,7 +8295,7 @@ process.umask = function() { return 0; }; /***/ }), -/* 119 */ +/* 120 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8379,10 +8416,10 @@ module.exports = { return this.tok.T_LNUMBER; } }; -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(118))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(119))) /***/ }), -/* 120 */ +/* 121 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8445,7 +8482,7 @@ module.exports = { }; /***/ }), -/* 121 */ +/* 122 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8506,7 +8543,7 @@ module.exports = { }; /***/ }), -/* 122 */ +/* 123 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8933,7 +8970,7 @@ lexer.prototype.next = function () { }; // extends the lexer with states -[__webpack_require__(121), __webpack_require__(120), __webpack_require__(119), __webpack_require__(117), __webpack_require__(116), __webpack_require__(115), __webpack_require__(114), __webpack_require__(113)].forEach(function (ext) { +[__webpack_require__(122), __webpack_require__(121), __webpack_require__(120), __webpack_require__(118), __webpack_require__(117), __webpack_require__(116), __webpack_require__(115), __webpack_require__(114)].forEach(function (ext) { for (var k in ext) { lexer.prototype[k] = ext[k]; } @@ -8942,7 +8979,7 @@ lexer.prototype.next = function () { module.exports = lexer; /***/ }), -/* 123 */ +/* 124 */ /***/ (function(module, exports) { var toString = {}.toString; @@ -8953,7 +8990,7 @@ module.exports = Array.isArray || function (arr) { /***/ }), -/* 124 */ +/* 125 */ /***/ (function(module, exports) { exports.read = function (buffer, offset, isLE, mLen, nBytes) { @@ -9043,7 +9080,7 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { /***/ }), -/* 125 */ +/* 126 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9201,7 +9238,7 @@ function fromByteArray (uint8) { /***/ }), -/* 126 */ +/* 127 */ /***/ (function(module, exports) { var g; @@ -9227,7 +9264,7 @@ module.exports = g; /***/ }), -/* 127 */ +/* 128 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9241,9 +9278,9 @@ module.exports = g; -var base64 = __webpack_require__(125) -var ieee754 = __webpack_require__(124) -var isArray = __webpack_require__(123) +var base64 = __webpack_require__(126) +var ieee754 = __webpack_require__(125) +var isArray = __webpack_require__(124) exports.Buffer = Buffer exports.SlowBuffer = SlowBuffer @@ -11021,10 +11058,10 @@ function isnan (val) { return val !== val // eslint-disable-line no-self-compare } -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(126))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(127))) /***/ }), -/* 128 */ +/* 129 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11037,10 +11074,10 @@ function isnan (val) { var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; -var lexer = __webpack_require__(122); -var parser = __webpack_require__(112); -var tokens = __webpack_require__(96); -var AST = __webpack_require__(95); +var lexer = __webpack_require__(123); +var parser = __webpack_require__(113); +var tokens = __webpack_require__(97); +var AST = __webpack_require__(96); /** * @private @@ -11246,7 +11283,7 @@ module.exports.combine = combine; // allow the default export in index.d.ts module.exports.default = engine; -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(127).Buffer)) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(128).Buffer)) /***/ }) /******/ ])["default"]; diff --git a/dist/php-parser.min.js b/dist/php-parser.min.js index 8fba7258f..35797971a 100644 --- a/dist/php-parser.min.js +++ b/dist/php-parser.min.js @@ -2,22 +2,22 @@ * * Package: php-parser * Parse PHP code and returns its AST - * Build: d135007a07b704e70a2d - 2018-10-21 + * Build: 9f51169b9d26feecb380 - 2018-10-21 * License: BSD-3-Clause * Author: Ioan CHIRIAC * */ -!function(root,factory){"object"==typeof exports&&"object"==typeof module?module.exports=factory():"function"==typeof define&&define.amd?define([],factory):"object"==typeof exports?exports.PhpParser=factory():root.PhpParser=factory()}(window,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{enumerable:!0,get:getter})},__webpack_require__.r=function(exports){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(exports,"__esModule",{value:!0})},__webpack_require__.t=function(value,mode){if(1&mode&&(value=__webpack_require__(value)),8&mode)return value;if(4&mode&&"object"==typeof value&&value&&value.__esModule)return value;var ns=Object.create(null);if(__webpack_require__.r(ns),Object.defineProperty(ns,"default",{enumerable:!0,value:value}),2&mode&&"string"!=typeof value)for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=128)}([function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("statement",function(kind,docs,location){Node.apply(this,[kind||"statement",docs,location])})},function(module,exports,__webpack_require__){"use strict";var Node=function(kind,docs,location){this.kind=kind,docs&&(this.leadingComments=docs),location&&(this.loc=location)};Node.prototype.setTrailingComments=function(docs){this.trailingComments=docs},Node.prototype.includeToken=function(parser){return this.loc&&(this.loc.end&&(this.loc.end.line=parser.lexer.yylloc.last_line,this.loc.end.column=parser.lexer.yylloc.last_column,this.loc.end.offset=parser.lexer.offset),parser.ast.withSource&&(this.loc.source=parser.lexer._input.substring(this.loc.start.offset,parser.lexer.offset))),this},Node.extends=function(type,constructor){return constructor.prototype=Object.create(this.prototype),constructor.extends=this.extends,constructor.prototype.constructor=constructor,constructor.kind=type,constructor},module.exports=Node},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("expression",function(kind,docs,location){Node.apply(this,[kind||"expression",docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0),Declaration=Statement.extends("declaration",function(kind,name,docs,location){Statement.apply(this,[kind||"declaration",docs,location]),this.name=name});Declaration.prototype.parseFlags=function(flags){this.isAbstract=1===flags[2],this.isFinal=2===flags[2],"class"!==this.kind&&(-1===flags[0]?this.visibility="":null===flags[0]?this.visibility=null:0===flags[0]?this.visibility="public":1===flags[0]?this.visibility="protected":2===flags[0]&&(this.visibility="private"),this.isStatic=1===flags[1])},module.exports=Declaration},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("literal",function(kind,value,raw,docs,location){Expr.apply(this,[kind||"literal",docs,location]),this.value=value,raw&&(this.raw=raw)})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("sys",function(kind,args,docs,location){Statement.apply(this,[kind||"sys",docs,location]),this.arguments=args})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("operation",function(kind,docs,location){Expr.apply(this,[kind||"operation",docs,location])})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1),Reference=Node.extends("reference",function(kind,docs,location){Node.apply(this,[kind||"reference",docs,location])});module.exports=Reference},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("lookup",function(kind,what,offset,docs,location){Expr.apply(this,[kind||"lookup",docs,location]),this.what=what,this.offset=offset})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("block",function(kind,children,docs,location){Statement.apply(this,[kind||"block",docs,location]),this.children=children.filter(Boolean)})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("comment",function(kind,value,docs,location){Node.apply(this,[kind,docs,location]),this.value=value})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("function",function(name,args,byref,type,nullable,docs,location){Declaration.apply(this,["function",name,docs,location]),this.arguments=args,this.byref=byref,this.type=type,this.nullable=nullable,this.body=null})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("constant",function(name,value,docs,location){Declaration.apply(this,["constant",name,docs,location]),this.value=value})},function(module,exports,__webpack_require__){"use strict";var Expression=__webpack_require__(2);module.exports=Expression.extends("yieldfrom",function(value,docs,location){Expression.apply(this,["yieldfrom",docs,location]),this.value=value})},function(module,exports,__webpack_require__){"use strict";var Expression=__webpack_require__(2);module.exports=Expression.extends("yield",function(value,key,docs,location){Expression.apply(this,["yield",docs,location]),this.value=value,this.key=key})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("while",function(test,body,shortForm,docs,location){Statement.apply(this,["while",docs,location]),this.test=test,this.body=body,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("variadic",function(what,docs,location){Expr.apply(this,["variadic",docs,location]),this.what=what})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("variable",function(name,byref,curly,docs,location){Expr.apply(this,["variable",docs,location]),this.name=name,this.byref=byref||!1,this.curly=curly||!1})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0),UseItem=Statement.extends("useitem",function(name,alias,type,docs,location){Statement.apply(this,["useitem",docs,location]),this.name=name,this.alias=alias,this.type=type});UseItem.TYPE_CONST="const",UseItem.TYPE_FUNCTION="function",module.exports=UseItem},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("usegroup",function(name,type,items,docs,location){Statement.apply(this,["usegroup",docs,location]),this.name=name,this.type=type,this.items=items})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("unset",function(args,docs,location){Sys.apply(this,["unset",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(6);module.exports=Operation.extends("unary",function(type,what,docs,location){Operation.apply(this,["unary",docs,location]),this.type=type,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("try",function(body,catches,always,docs,location){Statement.apply(this,["try",docs,location]),this.body=body,this.catches=catches,this.always=always})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("traituse",function(traits,adaptations,docs,location){Node.apply(this,["traituse",docs,location]),this.traits=traits,this.adaptations=adaptations})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1),KIND="traitprecedence";module.exports=Node.extends(KIND,function(trait,method,instead,docs,location){Node.apply(this,[KIND,docs,location]),this.trait=trait,this.method=method,this.instead=instead})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("traitalias",function(trait,method,as,flags,docs,location){Node.apply(this,["traitalias",docs,location]),this.trait=trait,this.method=method,this.as=as,this.visibility="",flags&&(0===flags[0]?this.visibility="public":1===flags[0]?this.visibility="protected":2===flags[0]&&(this.visibility="private"))})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("trait",function(name,ext,impl,body,docs,location){Declaration.apply(this,["trait",name,docs,location]),this.extends=ext,this.implements=impl,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("throw",function(what,docs,location){Statement.apply(this,["throw",docs,location]),this.what=what})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("switch",function(test,body,shortForm,docs,location){Statement.apply(this,["switch",docs,location]),this.test=test,this.body=body,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("string",function(isDoubleQuote,value,unicode,raw,docs,location){Literal.apply(this,["string",value,raw,docs,location]),this.unicode=unicode,this.isDoubleQuote=isDoubleQuote})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(7),KIND="staticreference",StaticReference=Reference.extends(KIND,function(docs,location){Reference.apply(this,[KIND,docs,location])});module.exports=StaticReference},function(module,exports,__webpack_require__){"use strict";var Lookup=__webpack_require__(8);module.exports=Lookup.extends("staticlookup",function(what,offset,docs,location){Lookup.apply(this,["staticlookup",what,offset,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("static",function(items,docs,location){Statement.apply(this,["static",docs,location]),this.items=items})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("silent",function(expr,docs,location){Statement.apply(this,["silent",docs,location]),this.expr=expr})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(7),KIND="selfreference",SelfReference=Reference.extends(KIND,function(docs,location){Reference.apply(this,[KIND,docs,location])});module.exports=SelfReference},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("return",function(expr,docs,location){Node.apply(this,["return",docs,location]),this.expr=expr})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("retif",function(test,trueExpr,falseExpr,docs,location){Statement.apply(this,["retif",docs,location]),this.test=test,this.trueExpr=trueExpr,this.falseExpr=falseExpr})},function(module,exports,__webpack_require__){"use strict";var Lookup=__webpack_require__(8),KIND="propertylookup";module.exports=Lookup.extends(KIND,function(what,offset,docs,location){Lookup.apply(this,[KIND,what,offset,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("property",function(name,value,flags,docs,location){Declaration.apply(this,["property",name,docs,location]),this.value=value,this.parseFlags(flags)})},function(module,exports,__webpack_require__){"use strict";var Block=__webpack_require__(9);module.exports=Block.extends("program",function(children,errors,comments,tokens,docs,location){Block.apply(this,["program",children,docs,location]),this.errors=errors,comments&&(this.comments=comments),tokens&&(this.tokens=tokens)})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("print",function(args,docs,location){Sys.apply(this,["print",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(6);module.exports=Operation.extends("pre",function(type,what,docs,location){Operation.apply(this,["pre",docs,location]),this.type=type,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(6);module.exports=Operation.extends("post",function(type,what,docs,location){Operation.apply(this,["post",docs,location]),this.type=type,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(7),KIND="parentreference",ParentReference=Reference.extends(KIND,function(docs,location){Reference.apply(this,[KIND,docs,location])});module.exports=ParentReference},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("parameter",function(name,type,value,isRef,isVariadic,nullable,docs,location){Declaration.apply(this,["parameter",name,docs,location]),this.value=value,this.type=type,this.byref=isRef,this.variadic=isVariadic,this.nullable=nullable})},function(module,exports,__webpack_require__){"use strict";var Lookup=__webpack_require__(8);module.exports=Lookup.extends("offsetlookup",function(what,offset,docs,location){Lookup.apply(this,["offsetlookup",what,offset,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("number",function(value,raw,docs,location){Literal.apply(this,["number",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("nowdoc",function(value,raw,label,quote,docs,location){Literal.apply(this,["nowdoc",value,raw,docs,location]),this.label=label,this.quote=quote})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("new",function(what,args,docs,location){Statement.apply(this,["new",docs,location]),this.what=what,this.arguments=args})},function(module,exports,__webpack_require__){"use strict";var Block=__webpack_require__(9);module.exports=Block.extends("namespace",function(name,children,withBrackets,docs,location){Block.apply(this,["namespace",children,docs,location]),this.name=name,this.withBrackets=withBrackets||!1})},function(module,exports,__webpack_require__){"use strict";var fn=__webpack_require__(11);module.exports=fn.extends("method",function(){fn.apply(this,arguments),this.kind="method"})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("magic",function(value,raw,docs,location){Literal.apply(this,["magic",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("list",function(items,shortForm,docs,location){Sys.apply(this,["list",items,docs,location]),this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("label",function(name,docs,location){Node.apply(this,["label",docs,location]),this.name=name})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("isset",function(args,docs,location){Sys.apply(this,["isset",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("interface",function(name,ext,body,docs,location){Declaration.apply(this,["interface",name,docs,location]),this.extends=ext,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("inline",function(value,raw,docs,location){Literal.apply(this,["inline",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("include",function(once,require,target,docs,location){Statement.apply(this,["include",docs,location]),this.once=once,this.require=require,this.target=target})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("if",function(test,body,alternate,shortForm,docs,location){Statement.apply(this,["if",docs,location]),this.test=test,this.body=body,this.alternate=alternate,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1),Identifier=Node.extends("identifier",function(name,docs,location){Node.apply(this,["identifier",docs,location]),this.name=name});module.exports=Identifier},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("halt",function(after,docs,location){Statement.apply(this,["halt",docs,location]),this.after=after})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("goto",function(label,docs,location){Statement.apply(this,["goto",docs,location]),this.label=label})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("global",function(items,docs,location){Statement.apply(this,["global",docs,location]),this.items=items})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("foreach",function(source,key,value,body,shortForm,docs,location){Statement.apply(this,["foreach",docs,location]),this.source=source,this.key=key,this.value=value,this.shortForm=shortForm,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("for",function(init,test,increment,body,shortForm,docs,location){Statement.apply(this,["for",docs,location]),this.init=init,this.test=test,this.increment=increment,this.shortForm=shortForm,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0),KIND="expressionstatement";module.exports=Statement.extends(KIND,function(expr,docs,location){Statement.apply(this,[KIND,docs,location]),this.expression=expr})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("exit",function(status,useDie,docs,location){Statement.apply(this,["exit",docs,location]),this.status=status,this.useDie=useDie})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("eval",function(source,docs,location){Statement.apply(this,["eval",docs,location]),this.source=source})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("error",function(message,token,line,expected,docs,location){Node.apply(this,["error",docs,location]),this.message=message,this.token=token,this.line=line,this.expected=expected})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("entry",function(key,value,docs,location){Node.apply(this,["entry",docs,location]),this.key=key,this.value=value})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4),Encapsed=Literal.extends("encapsed",function(value,raw,type,docs,location){Literal.apply(this,["encapsed",value,raw,docs,location]),this.type=type});Encapsed.TYPE_STRING="string",Encapsed.TYPE_SHELL="shell",Encapsed.TYPE_HEREDOC="heredoc",Encapsed.TYPE_OFFSET="offset",module.exports=Encapsed},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("empty",function(args,docs,location){Sys.apply(this,["empty",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("echo",function(args,shortForm,docs,location){Sys.apply(this,["echo",args,docs,location]),this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("do",function(test,body,docs,location){Statement.apply(this,["do",docs,location]),this.test=test,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Block=__webpack_require__(9),Declare=Block.extends("declare",function(what,body,mode,docs,location){Block.apply(this,["declare",body,docs,location]),this.what=what,this.mode=mode});Declare.MODE_SHORT="short",Declare.MODE_BLOCK="block",Declare.MODE_NONE="none",module.exports=Declare},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("continue",function(level,docs,location){Node.apply(this,["continue",docs,location]),this.level=level})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("constref",function(identifier,docs,location){Expr.apply(this,["constref",docs,location]),this.name=identifier})},function(module,exports,__webpack_require__){"use strict";var Comment=__webpack_require__(10);module.exports=Comment.extends("commentline",function(value,docs,location){Comment.apply(this,["commentline",value,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Comment=__webpack_require__(10);module.exports=Comment.extends("commentblock",function(value,docs,location){Comment.apply(this,["commentblock",value,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("closure",function(args,byref,uses,type,nullable,isStatic,docs,location){Statement.apply(this,["closure",docs,location]),this.uses=uses,this.arguments=args,this.byref=byref,this.type=type,this.nullable=nullable,this.isStatic=isStatic||!1,this.body=null})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("clone",function(what,docs,location){Statement.apply(this,["clone",docs,location]),this.what=what})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(7),KIND="classreference",ClassReference=Reference.extends(KIND,function ClassReference(name,isRelative,docs,location){Reference.apply(this,[KIND,docs,location]),isRelative?this.resolution=ClassReference.RELATIVE_NAME:1===name.length?this.resolution=ClassReference.UNQUALIFIED_NAME:""===name[0]?this.resolution=ClassReference.FULL_QUALIFIED_NAME:this.resolution=ClassReference.QUALIFIED_NAME,this.name=name.join("\\")});ClassReference.UNQUALIFIED_NAME="uqn",ClassReference.QUALIFIED_NAME="qn",ClassReference.FULL_QUALIFIED_NAME="fqn",ClassReference.RELATIVE_NAME="rn",module.exports=ClassReference},function(module,exports,__webpack_require__){"use strict";var Constant=__webpack_require__(12),KIND="classconstant";module.exports=Constant.extends(KIND,function(name,value,flags,docs,location){Constant.apply(this,[name,value,docs,location]),this.kind=KIND,this.parseFlags(flags)})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("class",function(name,ext,impl,body,flags,docs,location){Declaration.apply(this,["class",name,docs,location]),this.isAnonymous=!name,this.extends=ext,this.implements=impl,this.body=body,this.parseFlags(flags)})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("catch",function(body,what,variable,docs,location){Statement.apply(this,["catch",docs,location]),this.body=body,this.what=what,this.variable=variable})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(6);module.exports=Operation.extends("cast",function(type,raw,what,docs,location){Operation.apply(this,["cast",docs,location]),this.type=type,this.raw=raw,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("case",function(test,body,docs,location){Node.apply(this,["case",docs,location]),this.test=test,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("call",function(what,args,docs,location){Statement.apply(this,["call",docs,location]),this.what=what,this.arguments=args})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("break",function(level,docs,location){Node.apply(this,["break",docs,location]),this.level=level})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("boolean",function(value,raw,docs,location){Literal.apply(this,["boolean",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(6);module.exports=Operation.extends("bin",function(type,left,right,docs,location){Operation.apply(this,["bin",docs,location]),this.type=type,this.left=left,this.right=right})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("assign",function(left,right,operator,docs,location){Statement.apply(this,["assign",docs,location]),this.operator=operator,this.left=left,this.right=right})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("array",function(shortForm,items,docs,location){Expr.apply(this,["array",docs,location]),this.items=items,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";module.exports=function(line,column,offset){this.line=line,this.column=column,this.offset=offset}},function(module,exports,__webpack_require__){"use strict";module.exports=function(source,start,end){this.source=source,this.start=start,this.end=end}},function(module,exports,__webpack_require__){"use strict";var Location=__webpack_require__(94),Position=__webpack_require__(93),AST=function(withPositions,withSource){this.withPositions=withPositions,this.withSource=withSource};AST.prototype.position=function(parser){return new Position(parser.lexer.yylloc.first_line,parser.lexer.yylloc.first_column,parser.lexer.yylloc.first_offset)},AST.precedence={},[["or"],["xor"],["and"],["="],["?"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","!=","===","!==","<=>"],["<","<=",">",">="],["<<",">>"],["+","-","."],["*","/","%"],["!"],["instanceof"]].forEach(function(list,index){list.forEach(function(operator){AST.precedence[operator]=index+1})}),AST.prototype.resolvePrecedence=function(result){var buffer=void 0,lLevel=void 0,rLevel=void 0;return"bin"===result.kind?result.right&&!result.right.parenthesizedExpression&&("bin"===result.right.kind?(lLevel=AST.precedence[result.type],rLevel=AST.precedence[result.right.type],lLevel&&rLevel&&rLevel<=lLevel&&(buffer=result.right,result.right=result.right.left,buffer.left=this.resolvePrecedence(result),result=buffer)):"retif"===result.right.kind&&(lLevel=AST.precedence[result.type],rLevel=AST.precedence["?"],lLevel&&rLevel&&rLevel<=lLevel&&(buffer=result.right,result.right=result.right.test,buffer.test=this.resolvePrecedence(result),result=buffer))):"unary"===result.kind?result.what&&!result.what.parenthesizedExpression&&("bin"===result.what.kind?(buffer=result.what,result.what=result.what.left,buffer.left=this.resolvePrecedence(result),result=buffer):"retif"===result.what.kind&&(buffer=result.what,result.what=result.what.test,buffer.test=this.resolvePrecedence(result),result=buffer)):"retif"===result.kind?result.falseExpr&&"retif"===result.falseExpr.kind&&!result.falseExpr.parenthesizedExpression&&(buffer=result.falseExpr,result.falseExpr=buffer.test,buffer.test=this.resolvePrecedence(result),result=buffer):"assign"===result.kind&&result.right&&"bin"===result.right.kind&&!result.right.parenthesizedExpression&&(lLevel=AST.precedence["="],rLevel=AST.precedence[result.right.type],lLevel&&rLevel&&rLevel0?body(null,items):null)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_top_statements:function(){for(var result=[];this.token!==this.EOF&&"}"!==this.token;){var statement=this.read_top_statement();statement&&(Array.isArray(statement)?result=result.concat(statement):result.push(statement))}return result},read_top_statement:function(){switch(this.token){case this.tok.T_FUNCTION:return this.read_function(!1,!1);case this.tok.T_ABSTRACT:case this.tok.T_FINAL:var flag=this.read_class_scope();return this.token===this.tok.T_CLASS?this.read_class(flag):(this.error(this.tok.T_CLASS),this.next(),null);case this.tok.T_CLASS:return this.read_class([0,0,0]);case this.tok.T_INTERFACE:return this.read_interface();case this.tok.T_TRAIT:return this.read_trait();case this.tok.T_USE:return this.read_use_statement();case this.tok.T_CONST:return this.next().read_const_list();case this.tok.T_NAMESPACE:return this.read_namespace();case this.tok.T_HALT_COMPILER:var result=this.node("halt");return this.next().expect("(")&&this.next(),this.expect(")")&&this.next(),this.expect(";"),this.lexer.done=!0,result(this.lexer._input.substring(this.lexer.offset));default:return this.read_statement()}},read_inner_statements:function(){for(var result=[];this.token!=this.EOF&&"}"!==this.token;){var statement=this.read_inner_statement();statement&&(Array.isArray(statement)?result=result.concat(statement):result.push(statement))}return result},read_const_list:function(){var result=this.read_list(function(){this.expect(this.tok.T_STRING);var result=this.node("constant"),name=this.text();return this.next().expect("=")?result(name,this.next().read_expr()):result(name,null)},",",!1);return this.expectEndOfStatement(),result},read_declare_list:function(){for(var result={};this.token!=this.EOF&&")"!==this.token;){this.expect(this.tok.T_STRING);var name=this.text().toLowerCase();if(this.next().expect("=")?result[name]=this.next().read_expr():result[name]=null,","!==this.token)break;this.next()}return result},read_inner_statement:function(){switch(this.token){case this.tok.T_FUNCTION:return this.read_function(!1,!1);case this.tok.T_ABSTRACT:case this.tok.T_FINAL:var flag=this.read_class_scope();return this.token===this.tok.T_CLASS?this.read_class(flag):(this.error(this.tok.T_CLASS),this.next(),null);case this.tok.T_CLASS:return this.read_class([0,0,0]);case this.tok.T_INTERFACE:return this.read_interface();case this.tok.T_TRAIT:return this.read_trait();case this.tok.T_HALT_COMPILER:this.raiseError("__HALT_COMPILER() can only be used from the outermost scope");var node=this.node("halt");return this.next().expect("(")&&this.next(),this.expect(")")&&this.next(),node=node(this.lexer._input.substring(this.lexer.offset)),this.expect(";")&&this.next(),node;default:return this.read_statement()}},read_statement:function(){var result=void 0,expr=void 0,items=void 0,current=void 0,label=void 0;switch(this.token){case"{":return this.read_code_block(!1);case this.tok.T_IF:return this.read_if();case this.tok.T_SWITCH:return this.read_switch();case this.tok.T_FOR:return this.next().read_for();case this.tok.T_FOREACH:return this.next().read_foreach();case this.tok.T_WHILE:return this.next().read_while();case this.tok.T_DO:return this.next().read_do();case this.tok.T_COMMENT:return this.read_comment();case this.tok.T_DOC_COMMENT:return this.read_doc_comment();case this.tok.T_RETURN:return result=this.node("return"),expr=null,this.next().is("EOS")||(expr=this.read_expr()),this.expectEndOfStatement(),result(expr);case this.tok.T_BREAK:case this.tok.T_CONTINUE:result=this.node(this.token===this.tok.T_CONTINUE?"continue":"break");var level=null;return this.next(),";"!==this.token&&(level=this.read_expr()),this.expectEndOfStatement(),result(level);case this.tok.T_GLOBAL:return result=this.node("global"),items=this.next().read_list(this.read_simple_variable,","),this.expectEndOfStatement(),result(items);case this.tok.T_STATIC:return current=[this.token,this.lexer.getState()],result=this.node(),this.next().token===this.tok.T_DOUBLE_COLON?(this.lexer.tokens.push(current),expr=this.next().read_expr(),this.expectEndOfStatement(expr),result("expressionstatement",expr)):this.token===this.tok.T_FUNCTION?this.read_function(!0,[0,1,0]):(items=this.read_variable_declarations(),this.expectEndOfStatement(),result("static",items));case this.tok.T_ECHO:result=this.node("echo");var text=this.text(),shortForm="0?this.lexer._input[this.lexer.yylloc.first_offset-1]:null,fixFirstLine="\r"===prevChar||"\n"===prevChar;return fixFirstLine&&"\n"===prevChar&&this.lexer.yylloc.first_offset>1&&"\r"===this.lexer._input[this.lexer.yylloc.first_offset-2]&&(prevChar="\r\n"),result=this.node("inline"),this.next(),result(value,fixFirstLine?prevChar+value:value);case this.tok.T_UNSET:return result=this.node("unset"),this.next().expect("(")&&this.next(),items=this.read_list(this.read_variable,","),this.expect(")")&&this.next(),this.expect(";")&&this.next(),result(items);case this.tok.T_DECLARE:result=this.node("declare");var body=[],mode=void 0;this.next().expect("(")&&this.next();var what=this.read_declare_list();if(this.expect(")")&&this.next(),":"===this.token){for(this.next();this.token!=this.EOF&&this.token!==this.tok.T_ENDDECLARE;)body.push(this.read_top_statement());this.expect(this.tok.T_ENDDECLARE)&&this.next(),this.expectEndOfStatement(),mode=this.ast.declare.MODE_SHORT}else if("{"===this.token){for(this.next();this.token!=this.EOF&&"}"!==this.token;)body.push(this.read_top_statement());this.expect("}")&&this.next(),mode=this.ast.declare.MODE_BLOCK}else this.expect(";")&&this.next(),mode=this.ast.declare.MODE_NONE;return result(what,body,mode);case this.tok.T_TRY:return this.read_try();case this.tok.T_THROW:return result=this.node("throw"),expr=this.next().read_expr(),this.expectEndOfStatement(),result(expr);case";":return this.next(),null;case this.tok.T_STRING:return current=[this.token,this.lexer.getState()],label=this.text(),":"===this.next().token?(result=this.node("label"),this.next(),result(label)):(this.lexer.tokens.push(current),expr=this.next().read_expr(),this.expectEndOfStatement(),expr);case this.tok.T_GOTO:return result=this.node("goto"),label=null,this.next().expect(this.tok.T_STRING)&&(label=this.text(),this.next().expectEndOfStatement()),result(label);default:var statement=this.node("expressionstatement");return expr=this.read_expr(),this.expectEndOfStatement(expr),statement(expr)}},read_code_block:function(top){var result=this.node("block");this.expect("{")&&this.next();var body=top?this.read_top_statements():this.read_inner_statements();return this.expect("}")&&this.next(),result(null,body)}}},function(module,exports,__webpack_require__){"use strict";var specialChar={"\\r":"\r","\\n":"\n","\\t":"\t","\\v":String.fromCharCode(11),"\\e":String.fromCharCode(27),"\\f":String.fromCharCode(12),"\\\\":"\\","\\$":"$",'\\"':'"',"\\'":"'"};module.exports={resolve_special_chars:function(text,doubleQuote){return doubleQuote?text.replace(/\\[rntvef"'\\$]/g,function(seq){return specialChar[seq]}):text.replace(/\\['\\]/g,function(seq){return specialChar[seq]})},read_scalar:function(){if(this.is("T_MAGIC_CONST"))return this.get_magic_constant();var value=void 0,node=void 0;switch(this.token){case this.tok.T_CONSTANT_ENCAPSED_STRING:value=this.node("string");var text=this.text(),offset=0;"b"!==text[0]&&"B"!==text[0]||(offset=1);var isDoubleQuote='"'===text[offset];return this.next(),value=value(isDoubleQuote,this.resolve_special_chars(text.substring(offset+1,text.length-1),isDoubleQuote),1===offset,text),this.token===this.tok.T_DOUBLE_COLON?this.read_static_getter(value):value;case this.tok.T_START_HEREDOC:if("ST_NOWDOC"===this.lexer.curCondition){var start=this.lexer.yylloc.first_offset;node=this.node("nowdoc");var lastCh=(value=this.next().text())[value.length-1];"\n"===lastCh?value="\r"===value[value.length-2]?value.substring(0,value.length-2):value.substring(0,value.length-1):"\r"===lastCh&&(value=value.substring(0,value.length-1)),this.expect(this.tok.T_ENCAPSED_AND_WHITESPACE)&&this.next();var raw=this.lexer._input.substring(start,this.lexer.yylloc.last_offset);return node=node(value,raw,this.lexer.heredoc_label,'"'===raw[3]||"'"===raw[3]),this.expect(this.tok.T_END_HEREDOC)&&this.next(),node}return this.next().read_encapsed_string(this.tok.T_END_HEREDOC);case'"':return this.next().read_encapsed_string('"');case'b"':case'B"':return this.next(),this.lexer.yylloc.prev_offset-=1,this.read_encapsed_string('"');case this.tok.T_LNUMBER:case this.tok.T_DNUMBER:var result=this.node("number");return value=this.text(),this.next(),result(value,null);case this.tok.T_ARRAY:case"[":return this.read_array();default:var err=this.error("SCALAR");return this.next(),err}},read_dereferencable:function(expr){var result=void 0,offset=void 0,node=this.node("offsetlookup");return"["===this.token?(offset=this.next().read_expr(),this.expect("]")&&this.next(),result=node(expr,offset)):this.token===this.tok.T_DOLLAR_OPEN_CURLY_BRACES&&(result=node(expr,offset=this.read_encapsed_string_item(!1))),result},read_encapsed_string_item:function(isDoubleQuote){var result=this.node(),offset=void 0,node=void 0,name=void 0;if(this.token===this.tok.T_ENCAPSED_AND_WHITESPACE){var text=this.text();this.next(),result=result("string",!1,this.resolve_special_chars(text,isDoubleQuote),!1,text)}else if(this.token===this.tok.T_DOLLAR_OPEN_CURLY_BRACES){if(name=null,this.next().token===this.tok.T_STRING_VARNAME){name=this.node("variable");var varName=this.text();this.next(),"["===this.token?(name=name(varName,!1),node=this.node("offsetlookup"),offset=this.next().read_expr(),this.expect("]")&&this.next(),name=node(name,offset)):name=this.node("constref")(varName)}else name=this.read_expr();this.expect("}")&&this.next(),result=result("variable",name,!1,!0)}else if(this.token===this.tok.T_CURLY_OPEN)result.destroy(),"variable"===(result=this.next().read_variable(!1,!1,!1)).kind&&(result.curly=!0),this.expect("}")&&this.next();else if(this.token===this.tok.T_VARIABLE){if(result.destroy(),result=this.read_simple_variable(!1),"["===this.token&&(node=this.node("offsetlookup"),offset=this.next().read_encaps_var_offset(),this.expect("]")&&this.next(),result=node(result,offset)),this.token===this.tok.T_OBJECT_OPERATOR){node=this.node("propertylookup"),this.next().expect(this.tok.T_STRING);var what=this.node("constref");name=this.text(),this.next(),result=node(result,what(name))}}else{this.expect(this.tok.T_ENCAPSED_AND_WHITESPACE);var value=this.text();this.next(),result.destroy(),result=result("string",!1,value,!1,value)}return result},read_encapsed_string:function(expect){var start=this.lexer.yylloc.prev_offset,node=this.node("encapsed"),value=[],type=null;for(type="`"===expect?this.ast.encapsed.TYPE_SHELL:'"'===expect?this.ast.encapsed.TYPE_STRING:this.ast.encapsed.TYPE_HEREDOC;this.token!==expect&&this.token!==this.EOF;)value.push(this.read_encapsed_string_item(!0));return this.expect(expect)&&this.next(),node=node(value,this.lexer._input.substring(start-1,this.lexer.yylloc.first_offset),type),expect===this.tok.T_END_HEREDOC&&(node.label=this.lexer.heredoc_label),node},get_magic_constant:function(){var result=this.node("magic"),name=this.text();return this.next(),result(name.toUpperCase(),name)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_namespace:function(){var result=this.node("namespace"),body=void 0;if(this.expect(this.tok.T_NAMESPACE)&&this.next(),"{"==this.token)return this.currentNamespace=[""],body=this.next().read_top_statements(),this.expect("}")&&this.next(),result([""],body,!0);var name=this.read_namespace_name();return";"==this.token?(this.currentNamespace=name,body=this.next().read_top_statements(),this.expect(this.EOF),result(name.name,body,!1)):"{"==this.token?(this.currentNamespace=name,body=this.next().read_top_statements(),this.expect("}")&&this.next(),result(name.name,body,!0)):"("===this.token?(name.resolution=this.ast.reference.RELATIVE_NAME,name.name=name.name.substring(1),this.node("call")(name,this.read_function_argument_list())):(this.error(["{",";"]),this.currentNamespace=name,body=this.read_top_statements(),this.expect(this.EOF),result(name,body,!1))},read_namespace_name:function(){var result=this.node(),relative=!1;this.token===this.tok.T_NAMESPACE&&(this.next().expect(this.tok.T_NS_SEPARATOR)&&this.next(),relative=!0);var names=this.read_list(this.tok.T_STRING,this.tok.T_NS_SEPARATOR,!0);if(!relative&&1===names.length){if("parent"===names[0])return result("parentreference");if("self"===names[0])return result("selfreference")}return result("classreference",names,relative)},read_use_statement:function(){var result=this.node("usegroup"),items=[],name=null;this.expect(this.tok.T_USE)&&this.next();var type=this.read_use_type();return items.push(this.read_use_declaration(!1)),","===this.token?items=items.concat(this.next().read_use_declarations(!1)):"{"===this.token&&(name=items[0].name,items=this.next().read_use_declarations(null===type),this.expect("}")&&this.next()),result=result(name,type,items),this.expect(";")&&this.next(),result},read_use_declaration:function(typed){var result=this.node("useitem"),type=null;typed&&(type=this.read_use_type());var name=this.read_namespace_name(),alias=this.read_use_alias();return result(name.name,alias,type)},read_use_declarations:function(typed){for(var result=[this.read_use_declaration(typed)];","===this.token;){if(this.next(),typed){if(this.token!==this.tok.T_FUNCTION&&this.token!==this.tok.T_CONST&&this.token!==this.tok.T_STRING)break}else if(this.token!==this.tok.T_STRING)break;result.push(this.read_use_declaration(typed))}return result},read_use_alias:function(){var result=null;return this.token===this.tok.T_AS&&this.next().expect(this.tok.T_STRING)&&(result=this.text(),this.next()),result},read_use_type:function(){return this.token===this.tok.T_FUNCTION?(this.next(),this.ast.useitem.TYPE_FUNCTION):this.token===this.tok.T_CONST?(this.next(),this.ast.useitem.TYPE_CONST):null}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_start:function(){return this.token==this.tok.T_NAMESPACE?this.read_namespace():this.read_top_statement()}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_while:function(){var test,result=this.node("while"),body=null,shortForm=!1;return this.expect("(")&&this.next(),test=this.read_expr(),this.expect(")")&&this.next(),":"===this.token?(shortForm=!0,body=this.read_short_form(this.tok.T_ENDWHILE)):body=this.read_statement(),result(test,body,shortForm)},read_do:function(){var body,result=this.node("do"),test=null;return body=this.read_statement(),this.expect(this.tok.T_WHILE)&&(this.next().expect("(")&&this.next(),test=this.read_expr(),this.expect(")")&&this.next(),this.expect(";")&&this.next()),result(test,body)},read_for:function(){var result=this.node("for"),init=[],test=[],increment=[],body=null,shortForm=!1;return this.expect("(")&&this.next(),";"!==this.token?(init=this.read_list(this.read_expr,","),this.expect(";")&&this.next()):this.next(),";"!==this.token?(test=this.read_list(this.read_expr,","),this.expect(";")&&this.next()):this.next(),")"!==this.token?(increment=this.read_list(this.read_expr,","),this.expect(")")&&this.next()):this.next(),":"===this.token?(shortForm=!0,body=this.read_short_form(this.tok.T_ENDFOR)):body=this.read_statement(),result(init,test,increment,body,shortForm)},read_foreach:function(){var source,result=this.node("foreach"),key=null,value=null,body=null,shortForm=!1;return this.expect("(")&&this.next(),source=this.read_expr(),this.expect(this.tok.T_AS)&&(this.next(),value=this.read_foreach_variable(),this.token===this.tok.T_DOUBLE_ARROW&&(key=value,value=this.next().read_foreach_variable())),key&&"list"===key.kind&&this.raiseError("Fatal Error : Cannot use list as key element"),this.expect(")")&&this.next(),":"===this.token?(shortForm=!0,body=this.read_short_form(this.tok.T_ENDFOREACH)):body=this.read_statement(),result(source,key,value,body,shortForm)},read_foreach_variable:function(){if(this.token===this.tok.T_LIST||"["===this.token){var isShort="["===this.token,result=this.node("list");this.next(),!isShort&&this.expect("(")&&this.next();var assignList=this.read_array_pair_list(isShort);return this.expect(isShort?"]":")")&&this.next(),result(assignList,isShort)}return this.read_variable(!1,!1,!1)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_if:function(){var test,result=this.node("if"),body=null,alternate=null,shortForm=!1;if(test=this.next().read_if_expr(),":"===this.token){shortForm=!0,this.next(),body=this.node("block");for(var items=[];this.token!==this.EOF&&this.token!==this.tok.T_ENDIF;){if(this.token===this.tok.T_ELSEIF){alternate=this.read_elseif_short();break}if(this.token===this.tok.T_ELSE){alternate=this.read_else_short();break}items.push(this.read_inner_statement())}body=body(null,items),this.expect(this.tok.T_ENDIF)&&this.next(),this.expectEndOfStatement()}else body=this.read_statement(),this.token===this.tok.T_ELSEIF?alternate=this.read_if():this.token===this.tok.T_ELSE&&(alternate=this.next().read_statement());return result(test,body,alternate,shortForm)},read_if_expr:function(){this.expect("(")&&this.next();var result=this.read_expr();return this.expect(")")&&this.next(),result},read_elseif_short:function(){var test,result=this.node("if"),alternate=null,body=null,items=[];for(test=this.next().read_if_expr(),this.expect(":")&&this.next(),body=this.node("block");this.token!=this.EOF&&this.token!==this.tok.T_ENDIF;){if(this.token===this.tok.T_ELSEIF){alternate=this.read_elseif_short();break}if(this.token===this.tok.T_ELSE){alternate=this.read_else_short();break}items.push(this.read_inner_statement())}return result(test,body=body(null,items),alternate,!0)},read_else_short:function(){var body=this.node("block");this.next().expect(":")&&this.next();for(var items=[];this.token!=this.EOF&&this.token!==this.tok.T_ENDIF;)items.push(this.read_inner_statement());return body(null,items)}}},function(module,exports,__webpack_require__){"use strict";module.exports={is_reference:function(){return"&"==this.token&&(this.next(),!0)},is_variadic:function(){return this.token===this.tok.T_ELLIPSIS&&(this.next(),!0)},read_function:function(closure,flag){var result=this.read_function_declaration(closure?1:flag?2:0,flag&&1===flag[1]);return flag&&1==flag[2]?(result.parseFlags(flag),this.expect(";")&&this.next()):(this.expect("{")&&(result.body=this.read_code_block(!1),result.loc&&result.body.loc&&(result.loc.end=result.body.loc.end)),!closure&&flag&&result.parseFlags(flag)),result},read_function_declaration:function(type,isStatic){var nodeName="function";1===type?nodeName="closure":2===type&&(nodeName="method");var result=this.node(nodeName);this.expect(this.tok.T_FUNCTION)&&this.next();var isRef=this.is_reference(),name=!1,use=[],returnType=null,nullable=!1;if(1!==type){var nameNode=this.node("identifier");2===type?this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(name=this.text(),this.next()):this.error("IDENTIFIER"):(this.expect(this.tok.T_STRING)&&(name=this.text()),this.next()),name=nameNode(name)}this.expect("(")&&this.next();var params=this.read_parameter_list();return this.expect(")")&&this.next(),1===type&&this.token===this.tok.T_USE&&(this.next().expect("(")&&this.next(),use=this.read_list(this.read_lexical_var,","),this.expect(")")&&this.next()),":"===this.token&&("?"===this.next().token&&(nullable=!0,this.next()),returnType=this.read_type()),1===type?result(params,isRef,use,returnType,nullable,isStatic):result(name,params,isRef,returnType,nullable)},read_lexical_var:function(){var result=this.node("variable"),isRef=!1;"&"===this.token&&(isRef=!0,this.next()),this.expect(this.tok.T_VARIABLE);var name=this.text().substring(1);return this.next(),result(name,isRef,!1)},read_parameter_list:function(){var result=[];if(")"!=this.token)for(;this.token!=this.EOF;){if(result.push(this.read_parameter()),","!=this.token){if(")"==this.token)break;this.error([",",")"]);break}this.next()}return result},read_parameter:function(){var type,node=this.node("parameter"),name=null,value=null,nullable=!1;"?"===this.token&&(this.next(),nullable=!0),type=this.read_type(),nullable&&!type&&this.raiseError("Expecting a type definition combined with nullable operator");var isRef=this.is_reference(),isVariadic=this.is_variadic();return this.expect(this.tok.T_VARIABLE)&&(name=this.text().substring(1),this.next()),"="==this.token&&(value=this.next().read_expr()),node(name,type,value,isRef,isVariadic,nullable)},read_function_argument_list:function(){var result=[],wasVariadic=!1;if(this.expect("(")&&this.next(),")"!==this.token)for(;this.token!=this.EOF;){var argument=this.read_argument_list();if(argument&&(result.push(argument),"variadic"===argument.kind?wasVariadic=!0:wasVariadic&&this.raiseError("Unexpected argument after a variadic argument")),","!==this.token)break;this.next()}return this.expect(")")&&this.next(),result},read_argument_list:function(){return this.token===this.tok.T_ELLIPSIS?this.node("variadic")(this.next().read_expr()):this.read_expr()},read_type:function(){var result=this.node("classreference");switch(this.token){case this.tok.T_ARRAY:return this.next(),result(["","array"],!1);case this.tok.T_NAMESPACE:case this.tok.T_NS_SEPARATOR:case this.tok.T_STRING:return this.read_namespace_name();case this.tok.T_CALLABLE:return this.next(),result(["","callable"],!1);default:return null}}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_expr:function(){var result=this.node(),expr=this.read_expr_item();if("|"===this.token)return result("bin","|",expr,this.next().read_expr());if("&"===this.token)return result("bin","&",expr,this.next().read_expr());if("^"===this.token)return result("bin","^",expr,this.next().read_expr());if("."===this.token)return result("bin",".",expr,this.next().read_expr());if("+"===this.token)return result("bin","+",expr,this.next().read_expr());if("-"===this.token)return result("bin","-",expr,this.next().read_expr());if("*"===this.token)return result("bin","*",expr,this.next().read_expr());if("/"===this.token)return result("bin","/",expr,this.next().read_expr());if("%"===this.token)return result("bin","%",expr,this.next().read_expr());if(this.token===this.tok.T_POW)return result("bin","**",expr,this.next().read_expr());if(this.token===this.tok.T_SL)return result("bin","<<",expr,this.next().read_expr());if(this.token===this.tok.T_SR)return result("bin",">>",expr,this.next().read_expr());if(this.token===this.tok.T_BOOLEAN_OR)return result("bin","||",expr,this.next().read_expr());if(this.token===this.tok.T_LOGICAL_OR)return result("bin","or",expr,this.next().read_expr());if(this.token===this.tok.T_BOOLEAN_AND)return result("bin","&&",expr,this.next().read_expr());if(this.token===this.tok.T_LOGICAL_AND)return result("bin","and",expr,this.next().read_expr());if(this.token===this.tok.T_LOGICAL_XOR)return result("bin","xor",expr,this.next().read_expr());if(this.token===this.tok.T_IS_IDENTICAL)return result("bin","===",expr,this.next().read_expr());if(this.token===this.tok.T_IS_NOT_IDENTICAL)return result("bin","!==",expr,this.next().read_expr());if(this.token===this.tok.T_IS_EQUAL)return result("bin","==",expr,this.next().read_expr());if(this.token===this.tok.T_IS_NOT_EQUAL)return result("bin","!=",expr,this.next().read_expr());if("<"===this.token)return result("bin","<",expr,this.next().read_expr());if(">"===this.token)return result("bin",">",expr,this.next().read_expr());if(this.token===this.tok.T_IS_SMALLER_OR_EQUAL)return result("bin","<=",expr,this.next().read_expr());if(this.token===this.tok.T_IS_GREATER_OR_EQUAL)return result("bin",">=",expr,this.next().read_expr());if(this.token===this.tok.T_SPACESHIP)return result("bin","<=>",expr,this.next().read_expr());if(this.token===this.tok.T_INSTANCEOF)return result("bin","instanceof",expr,this.next().read_expr());if(this.token===this.tok.T_COALESCE)return result("bin","??",expr,this.next().read_expr());if("?"===this.token){var trueArg=null;return":"!==this.next().token&&(trueArg=this.read_expr()),this.expect(":")&&this.next(),result("retif",expr,trueArg,this.read_expr())}return result.destroy(expr),expr},read_expr_cast:function(type){return this.node("cast")(type,this.text(),this.next().read_expr())},read_expr_item:function(){var result=void 0,expr=void 0;if("@"===this.token)return this.node("silent")(this.next().read_expr());if("+"===this.token)return this.node("unary")("+",this.next().read_expr());if("!"===this.token)return this.node("unary")("!",this.next().read_expr());if("~"===this.token)return this.node("unary")("~",this.next().read_expr());if("-"===this.token)return result=this.node(),this.next(),this.token===this.tok.T_LNUMBER||this.token===this.tok.T_DNUMBER?(result=result("number","-"+this.text(),null),this.next(),result):result("unary","-",this.read_expr());if("("===this.token)return(expr=this.next().read_expr()).parenthesizedExpression=!0,this.expect(")")&&this.next(),this.handleDereferencable(expr);if("`"===this.token)return this.next().read_encapsed_string("`");if(this.token===this.tok.T_LIST){var assign=null,isInner=this.innerList;result=this.node("list"),isInner||(assign=this.node("assign")),this.next().expect("(")&&this.next(),this.innerList||(this.innerList=!0);var assignList=this.read_array_pair_list(!1);this.expect(")")&&this.next();for(var hasItem=!1,i=0;i>=");case this.tok.T_INC:return isConst&&this.error("VARIABLE"),this.next(),result("post","+",expr);case this.tok.T_DEC:return isConst&&this.error("VARIABLE"),this.next(),result("post","-",expr);default:result.destroy(expr)}}else{if(this.is("SCALAR")){if(result=this.node(),"array"===(expr=this.read_scalar()).kind&&expr.shortForm&&"="===this.token){var list=this.node("list")(expr.items,!0);return expr.loc&&(list.loc=expr.loc),result("assign",list,this.next().read_expr(),"=")}return result.destroy(expr),this.handleDereferencable(expr)}this.error("EXPR"),this.next()}return expr},read_new_expr:function(){var result=this.node("new"),args=[];if(this.token===this.tok.T_CLASS){var what=this.node("class"),propExtends=null,propImplements=null,body=null;return"("===this.next().token&&(args=this.read_function_argument_list()),this.token==this.tok.T_EXTENDS&&(propExtends=this.next().read_namespace_name()),this.token==this.tok.T_IMPLEMENTS&&(propImplements=this.next().read_name_list()),this.expect("{")&&(body=this.next().read_class_body()),result(what(null,propExtends,propImplements,body,[0,0,0]),args)}var name=this.read_class_name_reference();return"("===this.token&&(args=this.read_function_argument_list()),result(name,args)},read_class_name_reference:function(){if(this.token===this.tok.T_NS_SEPARATOR||this.token===this.tok.T_STRING||this.token===this.tok.T_NAMESPACE){var result=this.read_namespace_name();return this.token===this.tok.T_DOUBLE_COLON&&(result=this.read_static_getter(result)),result}if(this.is("VARIABLE"))return this.read_variable(!0,!1,!1);this.expect([this.tok.T_STRING,"VARIABLE"])},handleDereferencable:function(expr){for(;this.token!==this.EOF;)if(this.token===this.tok.T_OBJECT_OPERATOR||this.token===this.tok.T_DOUBLE_COLON)expr=this.recursive_variable_chain_scan(expr,!1,!1,!0);else if(this.token===this.tok.T_CURLY_OPEN||"["===this.token)expr=this.read_dereferencable(expr);else{if("("!==this.token)return expr;expr=this.node("call")(expr,this.read_function_argument_list())}return expr}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_comment:function(){var text=this.text(),result=this.ast.prepare("/*"===text.substring(0,2)?"commentblock":"commentline",null,this),prev=this.prev;return this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset],this.lex(),result=result(text),this.prev=prev,result},read_doc_comment:function(){var result=this.ast.prepare("commentblock",null,this),text=this.text(),prev=this.prev;return this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset],this.lex(),result=result(text),this.prev=prev,result}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_class:function(flag){var result=this.node("class");this.expect(this.tok.T_CLASS),this.next().expect(this.tok.T_STRING);var propName=this.text(),propExtends=null,propImplements=null;return this.next().token==this.tok.T_EXTENDS&&(propExtends=this.next().read_namespace_name()),this.token==this.tok.T_IMPLEMENTS&&(propImplements=this.next().read_name_list()),this.expect("{"),result(propName,propExtends,propImplements,this.next().read_class_body(),flag)},read_class_scope:function(){var result=this.token;return result==this.tok.T_FINAL?(this.next(),[0,0,2]):result==this.tok.T_ABSTRACT?(this.next(),[0,0,1]):[0,0,0]},read_class_body:function(){for(var result=[];this.token!==this.EOF&&"}"!==this.token;)if(this.token!==this.tok.T_COMMENT)if(this.token!==this.tok.T_DOC_COMMENT)if(this.token!==this.tok.T_USE){var flags=this.read_member_flags(!1);if(this.token!==this.tok.T_CONST)if(this.token===this.tok.T_VAR&&(this.next().expect(this.tok.T_VARIABLE),flags[0]=null,flags[1]=0),this.token===this.tok.T_VARIABLE){var variables=this.read_variable_list(flags);this.expect(";"),this.next(),result=result.concat(variables)}else this.token===this.tok.T_FUNCTION?result.push(this.read_function(!1,flags)):(this.error([this.tok.T_CONST,this.tok.T_VARIABLE,this.tok.T_FUNCTION]),this.next());else{var constants=this.read_constant_list(flags);this.expect(";")&&this.next(),result=result.concat(constants)}}else result=result.concat(this.next().read_trait_use_statement());else result.push(this.read_doc_comment());else result.push(this.read_comment());return this.expect("}"),this.next(),result},read_variable_list:function(flags){return this.read_list(function(){var result=this.node("property");this.expect(this.tok.T_VARIABLE);var name=this.text().substring(1);return this.next(),";"===this.token||","===this.token?result(name,null,flags):"="===this.token?result(name,this.next().read_expr(),flags):(this.expect([",",";","="]),result(name,null,flags))},",")},read_constant_list:function(flags){return this.expect(this.tok.T_CONST)&&this.next(),this.read_list(function(){var result=this.node("classconstant"),name=null,value=null;return this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(name=this.text(),this.next()):this.expect("IDENTIFIER"),this.expect("=")&&(value=this.next().read_expr()),result(name,value,flags)},",")},read_member_flags:function(asInterface){var result=[-1,-1,-1];if(this.is("T_MEMBER_FLAGS")){var idx=0,val=0;do{switch(this.token){case this.tok.T_PUBLIC:idx=0,val=0;break;case this.tok.T_PROTECTED:idx=0,val=1;break;case this.tok.T_PRIVATE:idx=0,val=2;break;case this.tok.T_STATIC:idx=1,val=1;break;case this.tok.T_ABSTRACT:idx=2,val=1;break;case this.tok.T_FINAL:idx=2,val=2}asInterface&&(0==idx&&2==val?(this.expect([this.tok.T_PUBLIC,this.tok.T_PROTECTED]),val=-1):2==idx&&1==val&&(this.error(),val=-1)),-1!==result[idx]?this.error():-1!==val&&(result[idx]=val)}while(this.next().is("T_MEMBER_FLAGS"))}return-1==result[1]&&(result[1]=0),-1==result[2]&&(result[2]=0),result},read_interface:function(){var result=this.node("interface"),name=null,body=null,propExtends=null;return this.expect(this.tok.T_INTERFACE)&&this.next(),this.expect(this.tok.T_STRING)&&(name=this.text(),this.next()),this.token===this.tok.T_EXTENDS&&(propExtends=this.next().read_name_list()),this.expect("{")&&(body=this.next().read_interface_body()),result(name,propExtends,body)},read_interface_body:function(){for(var result=[];this.token!==this.EOF&&"}"!==this.token;)if(this.token!==this.tok.T_COMMENT)if(this.token!==this.tok.T_DOC_COMMENT){var flags=this.read_member_flags(!0);if(this.token==this.tok.T_CONST){var constants=this.read_constant_list(flags);this.expect(";")&&this.next(),result=result.concat(constants)}else if(this.token===this.tok.T_FUNCTION){var method=this.read_function_declaration(2,flags);method.parseFlags(flags),result.push(method),this.expect(";")&&this.next()}else this.error([this.tok.T_CONST,this.tok.T_FUNCTION]),this.next()}else result.push(this.read_doc_comment());else result.push(this.read_comment());return this.expect("}")&&this.next(),result},read_trait:function(){var result=this.node("trait"),propName=null,propExtends=null,propImplements=null,body=null;return this.expect(this.tok.T_TRAIT)&&this.next(),this.expect(this.tok.T_STRING)&&(propName=this.text()),this.next().token==this.tok.T_EXTENDS&&(propExtends=this.next().read_namespace_name()),this.token==this.tok.T_IMPLEMENTS&&(propImplements=this.next().read_name_list()),this.expect("{")&&(body=this.next().read_class_body()),result(propName,propExtends,propImplements,body)},read_trait_use_statement:function(){for(var node=this.node("traituse"),traits=[this.read_namespace_name()],adaptations=null;","===this.token;)traits.push(this.next().read_namespace_name());if("{"===this.token){for(adaptations=[];this.next().token!==this.EOF&&"}"!==this.token;)adaptations.push(this.read_trait_use_alias()),this.expect(";");this.expect("}")&&this.next()}else this.expect(";")&&this.next();return node(traits,adaptations)},read_trait_use_alias:function(){var node=this.node(),trait=null,method=void 0;if(this.is("IDENTIFIER")?(method=this.text(),this.next()):(method=this.read_namespace_name(),this.token===this.tok.T_DOUBLE_COLON?(this.next(),this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(trait=method,method=this.text(),this.next()):this.expect(this.tok.T_STRING)):method=method.name),this.token===this.tok.T_INSTEADOF)return node("traitprecedence",trait,method,this.next().read_name_list());if(this.token===this.tok.T_AS){var flags=null,alias=null;return this.next().is("T_MEMBER_FLAGS")&&(flags=this.read_member_flags()),this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(alias=this.text(),this.next()):!1===flags&&this.expect(this.tok.T_STRING),node("traitalias",trait,method,alias,flags)}return this.expect([this.tok.T_AS,this.tok.T_INSTEADOF]),node("traitalias",trait,method,null,null)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_array:function(){var expect=null,shortForm=!1,result=this.node("array");this.token===this.tok.T_ARRAY?(this.next().expect("("),expect=")"):(shortForm=!0,expect="]");var items=[];return this.next().token!==expect&&(items=this.read_array_pair_list(shortForm)),this.expect(expect),this.next(),result(shortForm,items)},read_array_pair_list:function(shortForm){var self=this;return this.read_list(function(){return self.read_array_pair(shortForm)},",",!0)},read_array_pair:function(shortForm){if(","===this.token||!shortForm&&")"===this.token||shortForm&&"]"===this.token)return null;if("&"===this.token)return this.next().read_variable(!0,!1,!0);var entry=this.node("entry"),expr=this.read_expr();return this.token===this.tok.T_DOUBLE_ARROW?"&"===this.next().token?entry(expr,this.next().read_variable(!0,!1,!0)):entry(expr,this.read_expr()):expr},read_dim_offset:function(){return"]"!=this.token&&this.read_expr()}}},function(module,exports,__webpack_require__){"use strict";function isNumber(n){return"."!=n&&","!=n&&!isNaN(parseFloat(n))&&isFinite(n)}var parser=function(lexer,ast){this.lexer=lexer,this.ast=ast,this.tok=lexer.tok,this.EOF=lexer.EOF,this.token=null,this.prev=null,this.debug=!1,this.php7=!0,this.extractDoc=!1,this.extractTokens=!1,this.suppressErrors=!1;var mapIt=function(item){return[item,null]};this.entries={IDENTIFIER:new Map([this.tok.T_ABSTRACT,this.tok.T_ARRAY,this.tok.T_AS,this.tok.T_BREAK,this.tok.T_CALLABLE,this.tok.T_CASE,this.tok.T_CATCH,this.tok.T_CLASS,this.tok.T_CLASS_C,this.tok.T_CLONE,this.tok.T_CONST,this.tok.T_CONTINUE,this.tok.T_DECLARE,this.tok.T_DEFAULT,this.tok.T_DIR,this.tok.T_DO,this.tok.T_ECHO,this.tok.T_ELSE,this.tok.T_ELSEIF,this.tok.T_EMPTY,this.tok.T_ENDDECLARE,this.tok.T_ENDFOR,this.tok.T_ENDFOREACH,this.tok.T_ENDIF,this.tok.T_ENDSWITCH,this.tok.T_ENDWHILE,this.tok.T_EVAL,this.tok.T_EXIT,this.tok.T_EXTENDS,this.tok.T_FILE,this.tok.T_FINAL,this.tok.T_FINALLY,this.tok.T_FUNC_C,this.tok.T_FOR,this.tok.T_FOREACH,this.tok.T_FUNCTION,this.tok.T_GLOBAL,this.tok.T_GOTO,this.tok.T_IF,this.tok.T_IMPLEMENTS,this.tok.T_INCLUDE,this.tok.T_INCLUDE_ONCE,this.tok.T_INSTANCEOF,this.tok.T_INSTEADOF,this.tok.T_INTERFACE,this.tok.T_ISSET,this.tok.T_LINE,this.tok.T_LIST,this.tok.T_LOGICAL_AND,this.tok.T_LOGICAL_OR,this.tok.T_LOGICAL_XOR,this.tok.T_METHOD_C,this.tok.T_NAMESPACE,this.tok.T_NEW,this.tok.T_NS_C,this.tok.T_PRINT,this.tok.T_PRIVATE,this.tok.T_PROTECTED,this.tok.T_PUBLIC,this.tok.T_REQUIRE,this.tok.T_REQUIRE_ONCE,this.tok.T_RETURN,this.tok.T_STATIC,this.tok.T_SWITCH,this.tok.T_THROW,this.tok.T_TRAIT,this.tok.T_TRY,this.tok.T_UNSET,this.tok.T_USE,this.tok.T_VAR,this.tok.T_WHILE,this.tok.T_YIELD].map(mapIt)),VARIABLE:new Map([this.tok.T_VARIABLE,"$","&",this.tok.T_NS_SEPARATOR,this.tok.T_STRING,this.tok.T_NAMESPACE,this.tok.T_STATIC].map(mapIt)),SCALAR:new Map([this.tok.T_CONSTANT_ENCAPSED_STRING,this.tok.T_START_HEREDOC,this.tok.T_LNUMBER,this.tok.T_DNUMBER,this.tok.T_ARRAY,"[",this.tok.T_CLASS_C,this.tok.T_TRAIT_C,this.tok.T_FUNC_C,this.tok.T_METHOD_C,this.tok.T_LINE,this.tok.T_FILE,this.tok.T_DIR,this.tok.T_NS_C,'"','b"','B"',"-",this.tok.T_NS_SEPARATOR].map(mapIt)),T_MAGIC_CONST:new Map([this.tok.T_CLASS_C,this.tok.T_TRAIT_C,this.tok.T_FUNC_C,this.tok.T_METHOD_C,this.tok.T_LINE,this.tok.T_FILE,this.tok.T_DIR,this.tok.T_NS_C].map(mapIt)),T_MEMBER_FLAGS:new Map([this.tok.T_PUBLIC,this.tok.T_PRIVATE,this.tok.T_PROTECTED,this.tok.T_STATIC,this.tok.T_ABSTRACT,this.tok.T_FINAL].map(mapIt)),EOS:new Map([";",this.EOF,this.tok.T_INLINE_HTML].map(mapIt)),EXPR:new Map(["@","-","+","!","~","(","`",this.tok.T_LIST,this.tok.T_CLONE,this.tok.T_INC,this.tok.T_DEC,this.tok.T_NEW,this.tok.T_ISSET,this.tok.T_EMPTY,this.tok.T_INCLUDE,this.tok.T_INCLUDE_ONCE,this.tok.T_REQUIRE,this.tok.T_REQUIRE_ONCE,this.tok.T_EVAL,this.tok.T_INT_CAST,this.tok.T_DOUBLE_CAST,this.tok.T_STRING_CAST,this.tok.T_ARRAY_CAST,this.tok.T_OBJECT_CAST,this.tok.T_BOOL_CAST,this.tok.T_UNSET_CAST,this.tok.T_EXIT,this.tok.T_PRINT,this.tok.T_YIELD,this.tok.T_STATIC,this.tok.T_FUNCTION,this.tok.T_VARIABLE,"$",this.tok.T_NS_SEPARATOR,this.tok.T_STRING,this.tok.T_STRING,this.tok.T_CONSTANT_ENCAPSED_STRING,this.tok.T_START_HEREDOC,this.tok.T_LNUMBER,this.tok.T_DNUMBER,this.tok.T_ARRAY,"[",this.tok.T_CLASS_C,this.tok.T_TRAIT_C,this.tok.T_FUNC_C,this.tok.T_METHOD_C,this.tok.T_LINE,this.tok.T_FILE,this.tok.T_DIR,this.tok.T_NS_C].map(mapIt))}};parser.prototype.getTokenName=function(token){return isNumber(token)?token==this.EOF?"the end of file (EOF)":this.lexer.engine.tokens.values[token]:"'"+token+"'"},parser.prototype.parse=function(code,filename){this._errors=[],this.filename=filename||"eval",this.currentNamespace=[""],this.extractDoc?this._docs=[]:this._docs=null,this.extractTokens?this._tokens=[]:this._tokens=null,this._docIndex=0,this.lexer.setInput(code),this.lexer.all_tokens=this.extractTokens,this.lexer.comment_tokens=this.extractDoc,this.length=this.lexer._input.length,this.innerList=!1,this.innerListForm=!1;var program=this.node("program"),childs=[];for(this.next();this.token!=this.EOF;){var node=this.read_start();null!==node&&void 0!==node&&(Array.isArray(node)?childs=childs.concat(node):childs.push(node))}return this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset],program(childs,this._errors,this._docs,this._tokens)},parser.prototype.raiseError=function(message,msgExpect,expect,token){if(message+=" on line "+this.lexer.yylloc.first_line,!this.suppressErrors){var err=new SyntaxError(message,this.filename,this.lexer.yylloc.first_line);throw err.lineNumber=this.lexer.yylloc.first_line,err.fileName=this.filename,err.columnNumber=this.lexer.yylloc.first_column,err}var node=this.ast.prepare("error",null,this)(message,token,this.lexer.yylloc.first_line,expect);return this._errors.push(node),node},parser.prototype.error=function(expect){var msg="Parse Error : syntax error",token=this.getTokenName(this.token),msgExpect="";if(this.token!==this.EOF){if(isNumber(this.token)){var symbol=this.text();symbol.length>10&&(symbol=symbol.substring(0,7)+"..."),token="'"+symbol+"' ("+token+")"}msg+=", unexpected "+token}return expect&&!Array.isArray(expect)&&((isNumber(expect)||1===expect.length)&&(msgExpect=", expecting "+this.getTokenName(expect)),msg+=msgExpect),this.raiseError(msg,msgExpect,expect,token)},parser.prototype.node=function(name){if(this.extractDoc){var docs=null;this._docIndex"+this.lexer.yytext+"< @--\x3e"+line),this},parser.prototype.expect=function(token){if(Array.isArray(token)){if(-1===token.indexOf(this.token))return this.error(token),!1}else if(this.token!=token)return this.error(token),!1;return!0},parser.prototype.text=function(){return this.lexer.yytext},parser.prototype.next=function(){if(";"===this.token&&";"!==this.lexer.yytext||(this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset]),this.lex(),this.debug&&this.showlog(),this.extractDoc)for(;this.token===this.tok.T_COMMENT||this.token===this.tok.T_DOC_COMMENT;)this.token===this.tok.T_COMMENT?this._docs.push(this.read_comment()):this._docs.push(this.read_doc_comment());return this},parser.prototype.lex=function(){if(this.extractTokens)do{if(this.token=this.lexer.lex()||this.EOF,this.token===this.EOF)return this;var entry=this.lexer.yytext;if(entry=this.lexer.engine.tokens.values.hasOwnProperty(this.token)?[this.lexer.engine.tokens.values[this.token],entry,this.lexer.yylloc.first_line,this.lexer.yylloc.first_offset,this.lexer.offset]:[null,entry,this.lexer.yylloc.first_line,this.lexer.yylloc.first_offset,this.lexer.offset],this._tokens.push(entry),this.token===this.tok.T_CLOSE_TAG)return this.token=";",this;if(this.token===this.tok.T_OPEN_TAG_WITH_ECHO)return this.token=this.tok.T_ECHO,this}while(this.token===this.tok.T_WHITESPACE||!this.extractDoc&&(this.token===this.tok.T_COMMENT||this.token===this.tok.T_DOC_COMMENT)||this.token===this.tok.T_OPEN_TAG);else this.token=this.lexer.lex()||this.EOF;return this},parser.prototype.is=function(type){return Array.isArray(type)?-1!==type.indexOf(this.token):this.entries[type].has(this.token)},[__webpack_require__(111),__webpack_require__(110),__webpack_require__(109),__webpack_require__(108),__webpack_require__(107),__webpack_require__(106),__webpack_require__(105),__webpack_require__(104),__webpack_require__(103),__webpack_require__(102),__webpack_require__(101),__webpack_require__(100),__webpack_require__(99),__webpack_require__(98),__webpack_require__(97)].forEach(function(ext){for(var k in ext)parser.prototype[k]=ext[k]}),module.exports=parser},function(module,exports,__webpack_require__){"use strict";module.exports={is_NUM:function(){var ch=this._input.charCodeAt(this.offset-1);return ch>47&&ch<58},is_LABEL:function(){var ch=this._input.charCodeAt(this.offset-1);return ch>96&&ch<123||ch>64&&ch<91||95===ch||ch>47&&ch<58||ch>126},is_LABEL_START:function(){var ch=this._input.charCodeAt(this.offset-1);return ch>96&&ch<123||ch>64&&ch<91||95===ch||ch>126},consume_LABEL:function(){for(;this.offset?@".indexOf(ch)},is_WHITESPACE:function(){var ch=this._input[this.offset-1];return" "===ch||"\t"===ch||"\n"===ch||"\r"===ch},is_TABSPACE:function(){var ch=this._input[this.offset-1];return" "===ch||"\t"===ch},consume_TABSPACE:function(){for(;this.offset47&&ch<58||ch>64&&ch<71||ch>96&&ch<103}}},function(module,exports,__webpack_require__){"use strict";module.exports={T_STRING:function(){var token=this.yytext.toLowerCase(),id=this.keywords[token];if("number"!=typeof id)if("yield"===token)this.php7&&this.tryMatch(" from")?(this.consume(5),id=this.tok.T_YIELD_FROM):id=this.tok.T_YIELD;else if(id=this.tok.T_STRING,"b"===token||"B"===token){var ch=this.input(1);if('"'===ch)return this.ST_DOUBLE_QUOTES();if("'"===ch)return this.T_CONSTANT_ENCAPSED_STRING();ch&&this.unput(1)}return id},consume_TOKEN:function(){var ch=this._input[this.offset-1],fn=this.tokenTerminals[ch];return fn?fn.apply(this,[]):this.yytext},tokenTerminals:{$:function(){return this.offset++,this.is_LABEL_START()?(this.offset--,this.consume_LABEL(),this.tok.T_VARIABLE):(this.offset--,"$")},"-":function(){var nchar=this._input[this.offset];return">"===nchar?(this.begin("ST_LOOKING_FOR_PROPERTY").input(),this.tok.T_OBJECT_OPERATOR):"-"===nchar?(this.input(),this.tok.T_DEC):"="===nchar?(this.input(),this.tok.T_MINUS_EQUAL):"-"},"\\":function(){return this.tok.T_NS_SEPARATOR},"/":function(){return"="===this._input[this.offset]?(this.input(),this.tok.T_DIV_EQUAL):"/"},":":function(){return":"===this._input[this.offset]?(this.input(),this.tok.T_DOUBLE_COLON):":"},"(":function(){var initial=this.offset;if(this.input(),this.is_TABSPACE()&&this.consume_TABSPACE().input(),this.is_LABEL_START()){var yylen=this.yytext.length;this.consume_LABEL();var castToken=this.yytext.substring(yylen-1).toLowerCase(),castId=this.castKeywords[castToken];if("number"==typeof castId&&(this.input(),this.is_TABSPACE()&&this.consume_TABSPACE().input(),")"===this._input[this.offset-1]))return castId}return this.unput(this.offset-initial),"("},"=":function(){var nchar=this._input[this.offset];return">"===nchar?(this.input(),this.tok.T_DOUBLE_ARROW):"="===nchar?"="===this._input[this.offset+1]?(this.consume(2),this.tok.T_IS_IDENTICAL):(this.input(),this.tok.T_IS_EQUAL):"="},"+":function(){var nchar=this._input[this.offset];return"+"===nchar?(this.input(),this.tok.T_INC):"="===nchar?(this.input(),this.tok.T_PLUS_EQUAL):"+"},"!":function(){return"="===this._input[this.offset]?"="===this._input[this.offset+1]?(this.consume(2),this.tok.T_IS_NOT_IDENTICAL):(this.input(),this.tok.T_IS_NOT_EQUAL):"!"},"?":function(){return this.php7&&"?"===this._input[this.offset]?(this.input(),this.tok.T_COALESCE):"?"},"<":function(){var nchar=this._input[this.offset];return"<"===nchar?"="===(nchar=this._input[this.offset+1])?(this.consume(2),this.tok.T_SL_EQUAL):"<"===nchar&&this.is_HEREDOC()?this.tok.T_START_HEREDOC:(this.input(),this.tok.T_SL):"="===nchar?(this.input(),this.php7&&">"===this._input[this.offset]?(this.input(),this.tok.T_SPACESHIP):this.tok.T_IS_SMALLER_OR_EQUAL):">"===nchar?(this.input(),this.tok.T_IS_NOT_EQUAL):"<"},">":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_IS_GREATER_OR_EQUAL):">"===nchar?"="===(nchar=this._input[this.offset+1])?(this.consume(2),this.tok.T_SR_EQUAL):(this.input(),this.tok.T_SR):">"},"*":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_MUL_EQUAL):"*"===nchar?(this.input(),"="===this._input[this.offset]?(this.input(),this.tok.T_POW_EQUAL):this.tok.T_POW):"*"},".":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_CONCAT_EQUAL):"."===nchar&&"."===this._input[this.offset+1]?(this.consume(2),this.tok.T_ELLIPSIS):"."},"%":function(){return"="===this._input[this.offset]?(this.input(),this.tok.T_MOD_EQUAL):"%"},"&":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_AND_EQUAL):"&"===nchar?(this.input(),this.tok.T_BOOLEAN_AND):"&"},"|":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_OR_EQUAL):"|"===nchar?(this.input(),this.tok.T_BOOLEAN_OR):"|"},"^":function(){return"="===this._input[this.offset]?(this.input(),this.tok.T_XOR_EQUAL):"^"}}}},function(module,exports,__webpack_require__){"use strict";module.exports={T_CONSTANT_ENCAPSED_STRING:function(){for(var ch=void 0;this.offset2&&this.appendToken(this.tok.T_ENCAPSED_AND_WHITESPACE,this.yytext.length-prefix),this.unput(this.yytext.length-prefix),this.begin("ST_DOUBLE_QUOTES"),this.yytext},isDOC_MATCH:function(){if(this._input.substring(this.offset-1,this.offset-1+this.heredoc_label.length)===this.heredoc_label){var ch=this._input[this.offset-1+this.heredoc_label.length];if("\n"===ch||"\r"===ch||";"===ch)return!0}return!1},matchST_NOWDOC:function(){if(this.isDOC_MATCH())return this.consume(this.heredoc_label.length),this.popState(),this.tok.T_END_HEREDOC;for(var ch=this._input[this.offset-1];this.offset2?(this.appendToken(this.tok.T_DOLLAR_OPEN_CURLY_BRACES,2),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START()){var yyoffset=this.offset,next=this.consume_VARIABLE();return this.yytext.length>this.offset-yyoffset+2?(this.appendToken(next,this.offset-yyoffset+2),this.unput(this.offset-yyoffset+2),this.tok.T_ENCAPSED_AND_WHITESPACE):next}}else if("{"===ch){if("$"===(ch=this.input()))return this.begin("ST_IN_SCRIPTING"),this.yytext.length>2?(this.appendToken(this.tok.T_CURLY_OPEN,1),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):(this.unput(1),this.tok.T_CURLY_OPEN)}else ch=this.input();return this.tok.T_ENCAPSED_AND_WHITESPACE},consume_VARIABLE:function(){this.consume_LABEL();var ch=this.input();if("["==ch)return this.unput(1),this.begin("ST_VAR_OFFSET"),this.tok.T_VARIABLE;if("-"===ch){if(">"===this.input())return this.input(),this.is_LABEL_START()&&this.begin("ST_LOOKING_FOR_PROPERTY"),this.unput(3),this.tok.T_VARIABLE;this.unput(2)}else ch&&this.unput(1);return this.tok.T_VARIABLE},matchST_BACKQUOTE:function(){var ch=this.input();if("$"===ch){if("{"===(ch=this.input()))return this.begin("ST_LOOKING_FOR_VARNAME"),this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START())return this.consume_VARIABLE()}else if("{"===ch){if("$"===this._input[this.offset])return this.begin("ST_IN_SCRIPTING"),this.tok.T_CURLY_OPEN}else if("`"===ch)return this.popState(),"`";for(;this.offset2?(this.appendToken(this.tok.T_DOLLAR_OPEN_CURLY_BRACES,2),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START()){var yyoffset=this.offset,next=this.consume_VARIABLE();return this.yytext.length>this.offset-yyoffset+2?(this.appendToken(next,this.offset-yyoffset+2),this.unput(this.offset-yyoffset+2),this.tok.T_ENCAPSED_AND_WHITESPACE):next}continue}if("{"===ch){if("$"===(ch=this.input()))return this.begin("ST_IN_SCRIPTING"),this.yytext.length>2?(this.appendToken(this.tok.T_CURLY_OPEN,1),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):(this.unput(1),this.tok.T_CURLY_OPEN);continue}}ch=this.input()}return this.tok.T_ENCAPSED_AND_WHITESPACE},matchST_DOUBLE_QUOTES:function(){var ch=this.input();if("$"===ch){if("{"===(ch=this.input()))return this.begin("ST_LOOKING_FOR_VARNAME"),this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START())return this.consume_VARIABLE()}else if("{"===ch){if("$"===this._input[this.offset])return this.begin("ST_IN_SCRIPTING"),this.tok.T_CURLY_OPEN}else if('"'===ch)return this.popState(),'"';for(;this.offset2?(this.appendToken(this.tok.T_DOLLAR_OPEN_CURLY_BRACES,2),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START()){var yyoffset=this.offset,next=this.consume_VARIABLE();return this.yytext.length>this.offset-yyoffset+2?(this.appendToken(next,this.offset-yyoffset+2),this.unput(this.offset-yyoffset+2),this.tok.T_ENCAPSED_AND_WHITESPACE):next}ch&&this.unput(1)}else if("{"===ch){if("$"===(ch=this.input()))return this.begin("ST_IN_SCRIPTING"),this.yytext.length>2?(this.appendToken(this.tok.T_CURLY_OPEN,1),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):(this.unput(1),this.tok.T_CURLY_OPEN);ch&&this.unput(1)}}ch=this.input()}return this.tok.T_ENCAPSED_AND_WHITESPACE}}},function(module,exports,__webpack_require__){"use strict";module.exports={matchST_IN_SCRIPTING:function(){var ch=this.input();switch(ch){case" ":case"\t":case"\n":case"\r":case"\r\n":return this.T_WHITESPACE();case"#":return this.T_COMMENT();case"/":return"/"===this._input[this.offset]?this.T_COMMENT():"*"===this._input[this.offset]?(this.input(),this.T_DOC_COMMENT()):this.consume_TOKEN();case"'":return this.T_CONSTANT_ENCAPSED_STRING();case'"':return this.ST_DOUBLE_QUOTES();case"`":return this.begin("ST_BACKQUOTE"),"`";case"?":if(!this.aspTagMode&&this.tryMatch(">")){this.input();var nextCH=this._input[this.offset];return"\n"!==nextCH&&"\r"!==nextCH||this.input(),this.conditionStack.length>1&&this.begin("INITIAL"),this.tok.T_CLOSE_TAG}return this.consume_TOKEN();case"%":return this.aspTagMode&&">"===this._input[this.offset]?(this.input(),"\n"!==(ch=this._input[this.offset])&&"\r"!==ch||this.input(),this.aspTagMode=!1,this.conditionStack.length>1&&this.begin("INITIAL"),this.tok.T_CLOSE_TAG):this.consume_TOKEN();case"{":return this.begin("ST_IN_SCRIPTING"),"{";case"}":return this.conditionStack.length>2&&this.popState(),"}";default:if("."===ch){if(ch=this.input(),this.is_NUM())return this.consume_NUM();ch&&this.unput(1)}if(this.is_NUM())return this.consume_NUM();if(this.is_LABEL_START())return this.consume_LABEL().T_STRING();if(this.is_TOKEN())return this.consume_TOKEN()}throw new Error('Bad terminal sequence "'+ch+'" at line '+this.yylineno+" (offset "+this.offset+")")},T_WHITESPACE:function(){for(;this.offset"===(ch=this.input()))return this.tok.T_OBJECT_OPERATOR;ch&&this.unput(1)}else{if(this.is_WHITESPACE())return this.tok.T_WHITESPACE;if(this.is_LABEL_START())return this.consume_LABEL(),this.popState(),this.tok.T_STRING}return this.popState(),ch&&this.unput(1),!1},matchST_LOOKING_FOR_VARNAME:function(){var ch=this.input();if(this.popState(),this.begin("ST_IN_SCRIPTING"),this.is_LABEL_START()){if(this.consume_LABEL(),"["===(ch=this.input())||"}"===ch)return this.unput(1),this.tok.T_STRING_VARNAME;this.unput(this.yytext.length)}else ch&&this.unput(1);return!1},matchST_VAR_OFFSET:function(){var ch=this.input();if(this.is_NUM())return this.consume_NUM(),this.tok.T_NUM_STRING;if("]"===ch)return this.popState(),"]";if("$"===ch){if(this.input(),this.is_LABEL_START())return this.consume_LABEL(),this.tok.T_VARIABLE;throw new Error("Unexpected terminal")}if(this.is_LABEL_START())return this.consume_LABEL(),this.tok.T_STRING;if(this.is_WHITESPACE()||"\\"===ch||"'"===ch||"#"===ch)return this.tok.T_ENCAPSED_AND_WHITESPACE;if("["===ch||"{"===ch||"}"===ch||'"'===ch||"`"===ch||this.is_TOKEN())return ch;throw new Error("Unexpected terminal")}}},function(module,exports){var cachedSetTimeout,cachedClearTimeout,process=module.exports={};function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(fun){if(cachedSetTimeout===setTimeout)return setTimeout(fun,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(fun,0);try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}!function(){try{cachedSetTimeout="function"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout="function"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var currentQueue,queue=[],draining=!1,queueIndex=-1;function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var timeout=runTimeout(cleanUpNextTick);draining=!0;for(var len=queue.length;len;){for(currentQueue=queue,queue=[];++queueIndex1)for(var i=1;i1&&"INITIAL"===this.conditionStack[this.conditionStack.length-1]?this.popState():this.begin("ST_IN_SCRIPTING"),this},matchINITIAL:function(){for(;this.offset0&&this.tok.T_INLINE_HTML}}},function(module,exports,__webpack_require__){"use strict";module.exports={T_COMMENT:function(){for(;this.offset"===this._input[this.offset])return this.unput(1),this.tok.T_COMMENT;if("%"===ch&&this.aspTagMode&&">"===this._input[this.offset])return this.unput(1),this.tok.T_COMMENT}return this.tok.T_COMMENT},T_DOC_COMMENT:function(){var ch=this.input(),token=this.tok.T_COMMENT;if("*"===ch){if(ch=this.input(),this.is_WHITESPACE()&&(token=this.tok.T_DOC_COMMENT),"/"===ch)return token;this.unput(1)}for(;this.offset=this.size,!this.all_tokens&&this.mode_eval?(this.conditionStack=["INITIAL"],this.begin("ST_IN_SCRIPTING")):(this.conditionStack=[],this.begin("INITIAL")),this},lexer.prototype.input=function(){var ch=this._input[this.offset];return ch?(this.yytext+=ch,this.offset++,"\r"===ch&&"\n"===this._input[this.offset]&&(this.yytext+="\n",this.offset++),"\n"===ch||"\r"===ch?(this.yylloc.last_line=++this.yylineno,this.yyprevcol=this.yylloc.last_column,this.yylloc.last_column=0):this.yylloc.last_column++,ch):""},lexer.prototype.unput=function(size){if(1===size)this.offset--,"\n"===this._input[this.offset]&&"\r"===this._input[this.offset-1]&&(this.offset--,size++),"\r"===this._input[this.offset]||"\n"===this._input[this.offset]?(this.yylloc.last_line--,this.yylineno--,this.yylloc.last_column=this.yyprevcol):this.yylloc.last_column--,this.yytext=this.yytext.substring(0,this.yytext.length-size);else if(size>0)if(this.offset-=size,size0?this.conditionStack.pop():this.conditionStack[0];if(this.curCondition=this.conditionStack[this.conditionStack.length-1],this.stateCb=this["match"+this.curCondition],"function"!=typeof this.stateCb)throw new Error('Undefined condition state "'+this.curCondition+'"');return condition},lexer.prototype.next=function(){var token=void 0;if(this._input||(this.done=!0),this.yylloc.first_offset=this.offset,this.yylloc.first_line=this.yylloc.last_line,this.yylloc.first_column=this.yylloc.last_column,this.yytext="",this.done)return this.yylloc.prev_offset=this.yylloc.first_offset,this.yylloc.prev_line=this.yylloc.first_line,this.yylloc.prev_column=this.yylloc.first_column,this.EOF;if(this.tokens.length>0?(token=this.tokens.shift(),"object"===_typeof(token[1])?this.setState(token[1]):this.consume(token[1]),token=token[0]):token=this.stateCb.apply(this,[]),this.offset>=this.size&&0===this.tokens.length&&(this.done=!0),this.debug){var tName=token;tName="number"==typeof tName?this.engine.tokens.values[tName]:'"'+tName+'"';var e=new Error(tName+"\tfrom "+this.yylloc.first_line+","+this.yylloc.first_column+"\t - to "+this.yylloc.last_line+","+this.yylloc.last_column+'\t"'+this.yytext+'"');console.error(e.stack)}return token},[__webpack_require__(121),__webpack_require__(120),__webpack_require__(119),__webpack_require__(117),__webpack_require__(116),__webpack_require__(115),__webpack_require__(114),__webpack_require__(113)].forEach(function(ext){for(var k in ext)lexer.prototype[k]=ext[k]}),module.exports=lexer},function(module,exports){var toString={}.toString;module.exports=Array.isArray||function(arr){return"[object Array]"==toString.call(arr)}},function(module,exports){exports.read=function(buffer,offset,isLE,mLen,nBytes){var e,m,eLen=8*nBytes-mLen-1,eMax=(1<>1,nBits=-7,i=isLE?nBytes-1:0,d=isLE?-1:1,s=buffer[offset+i];for(i+=d,e=s&(1<<-nBits)-1,s>>=-nBits,nBits+=eLen;nBits>0;e=256*e+buffer[offset+i],i+=d,nBits-=8);for(m=e&(1<<-nBits)-1,e>>=-nBits,nBits+=mLen;nBits>0;m=256*m+buffer[offset+i],i+=d,nBits-=8);if(0===e)e=1-eBias;else{if(e===eMax)return m?NaN:1/0*(s?-1:1);m+=Math.pow(2,mLen),e-=eBias}return(s?-1:1)*m*Math.pow(2,e-mLen)},exports.write=function(buffer,value,offset,isLE,mLen,nBytes){var e,m,c,eLen=8*nBytes-mLen-1,eMax=(1<>1,rt=23===mLen?Math.pow(2,-24)-Math.pow(2,-77):0,i=isLE?0:nBytes-1,d=isLE?1:-1,s=value<0||0===value&&1/value<0?1:0;for(value=Math.abs(value),isNaN(value)||value===1/0?(m=isNaN(value)?1:0,e=eMax):(e=Math.floor(Math.log(value)/Math.LN2),value*(c=Math.pow(2,-e))<1&&(e--,c*=2),(value+=e+eBias>=1?rt/c:rt*Math.pow(2,1-eBias))*c>=2&&(e++,c/=2),e+eBias>=eMax?(m=0,e=eMax):e+eBias>=1?(m=(value*c-1)*Math.pow(2,mLen),e+=eBias):(m=value*Math.pow(2,eBias-1)*Math.pow(2,mLen),e=0));mLen>=8;buffer[offset+i]=255&m,i+=d,m/=256,mLen-=8);for(e=e<0;buffer[offset+i]=255&e,i+=d,e/=256,eLen-=8);buffer[offset+i-d]|=128*s}},function(module,exports,__webpack_require__){"use strict";exports.byteLength=function(b64){var lens=getLens(b64),validLen=lens[0],placeHoldersLen=lens[1];return 3*(validLen+placeHoldersLen)/4-placeHoldersLen},exports.toByteArray=function(b64){for(var tmp,lens=getLens(b64),validLen=lens[0],placeHoldersLen=lens[1],arr=new Arr(function(b64,validLen,placeHoldersLen){return 3*(validLen+placeHoldersLen)/4-placeHoldersLen}(0,validLen,placeHoldersLen)),curByte=0,len=placeHoldersLen>0?validLen-4:validLen,i=0;i>16&255,arr[curByte++]=tmp>>8&255,arr[curByte++]=255&tmp;2===placeHoldersLen&&(tmp=revLookup[b64.charCodeAt(i)]<<2|revLookup[b64.charCodeAt(i+1)]>>4,arr[curByte++]=255&tmp);1===placeHoldersLen&&(tmp=revLookup[b64.charCodeAt(i)]<<10|revLookup[b64.charCodeAt(i+1)]<<4|revLookup[b64.charCodeAt(i+2)]>>2,arr[curByte++]=tmp>>8&255,arr[curByte++]=255&tmp);return arr},exports.fromByteArray=function(uint8){for(var tmp,len=uint8.length,extraBytes=len%3,parts=[],i=0,len2=len-extraBytes;ilen2?len2:i+16383));1===extraBytes?(tmp=uint8[len-1],parts.push(lookup[tmp>>2]+lookup[tmp<<4&63]+"==")):2===extraBytes&&(tmp=(uint8[len-2]<<8)+uint8[len-1],parts.push(lookup[tmp>>10]+lookup[tmp>>4&63]+lookup[tmp<<2&63]+"="));return parts.join("")};for(var lookup=[],revLookup=[],Arr="undefined"!=typeof Uint8Array?Uint8Array:Array,code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,len=code.length;i0)throw new Error("Invalid string. Length must be a multiple of 4");var validLen=b64.indexOf("=");return-1===validLen&&(validLen=len),[validLen,validLen===len?0:4-validLen%4]}function encodeChunk(uint8,start,end){for(var tmp,num,output=[],i=start;i>18&63]+lookup[num>>12&63]+lookup[num>>6&63]+lookup[63&num]);return output.join("")}revLookup["-".charCodeAt(0)]=62,revLookup["_".charCodeAt(0)]=63},function(module,exports){var g;g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){"use strict";(function(global){ +!function(root,factory){"object"==typeof exports&&"object"==typeof module?module.exports=factory():"function"==typeof define&&define.amd?define([],factory):"object"==typeof exports?exports.PhpParser=factory():root.PhpParser=factory()}(window,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{enumerable:!0,get:getter})},__webpack_require__.r=function(exports){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(exports,"__esModule",{value:!0})},__webpack_require__.t=function(value,mode){if(1&mode&&(value=__webpack_require__(value)),8&mode)return value;if(4&mode&&"object"==typeof value&&value&&value.__esModule)return value;var ns=Object.create(null);if(__webpack_require__.r(ns),Object.defineProperty(ns,"default",{enumerable:!0,value:value}),2&mode&&"string"!=typeof value)for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=129)}([function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("statement",function(kind,docs,location){Node.apply(this,[kind||"statement",docs,location])})},function(module,exports,__webpack_require__){"use strict";var Node=function(kind,docs,location){this.kind=kind,docs&&(this.leadingComments=docs),location&&(this.loc=location)};Node.prototype.setTrailingComments=function(docs){this.trailingComments=docs},Node.prototype.includeToken=function(parser){return this.loc&&(this.loc.end&&(this.loc.end.line=parser.lexer.yylloc.last_line,this.loc.end.column=parser.lexer.yylloc.last_column,this.loc.end.offset=parser.lexer.offset),parser.ast.withSource&&(this.loc.source=parser.lexer._input.substring(this.loc.start.offset,parser.lexer.offset))),this},Node.extends=function(type,constructor){return constructor.prototype=Object.create(this.prototype),constructor.extends=this.extends,constructor.prototype.constructor=constructor,constructor.kind=type,constructor},module.exports=Node},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("expression",function(kind,docs,location){Node.apply(this,[kind||"expression",docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0),Declaration=Statement.extends("declaration",function(kind,name,docs,location){Statement.apply(this,[kind||"declaration",docs,location]),this.name=name});Declaration.prototype.parseFlags=function(flags){this.isAbstract=1===flags[2],this.isFinal=2===flags[2],"class"!==this.kind&&(-1===flags[0]?this.visibility="":null===flags[0]?this.visibility=null:0===flags[0]?this.visibility="public":1===flags[0]?this.visibility="protected":2===flags[0]&&(this.visibility="private"),this.isStatic=1===flags[1])},module.exports=Declaration},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("literal",function(kind,value,raw,docs,location){Expr.apply(this,[kind||"literal",docs,location]),this.value=value,raw&&(this.raw=raw)})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("sys",function(kind,args,docs,location){Statement.apply(this,[kind||"sys",docs,location]),this.arguments=args})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1),Reference=Node.extends("reference",function(kind,docs,location){Node.apply(this,[kind||"reference",docs,location])});module.exports=Reference},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("operation",function(kind,docs,location){Expr.apply(this,[kind||"operation",docs,location])})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("lookup",function(kind,what,offset,docs,location){Expr.apply(this,[kind||"lookup",docs,location]),this.what=what,this.offset=offset})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("block",function(kind,children,docs,location){Statement.apply(this,[kind||"block",docs,location]),this.children=children.filter(Boolean)})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("comment",function(kind,value,docs,location){Node.apply(this,[kind,docs,location]),this.value=value})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("function",function(name,args,byref,type,nullable,docs,location){Declaration.apply(this,["function",name,docs,location]),this.arguments=args,this.byref=byref,this.type=type,this.nullable=nullable,this.body=null})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("constant",function(name,value,docs,location){Declaration.apply(this,["constant",name,docs,location]),this.value=value})},function(module,exports,__webpack_require__){"use strict";var Expression=__webpack_require__(2);module.exports=Expression.extends("yieldfrom",function(value,docs,location){Expression.apply(this,["yieldfrom",docs,location]),this.value=value})},function(module,exports,__webpack_require__){"use strict";var Expression=__webpack_require__(2);module.exports=Expression.extends("yield",function(value,key,docs,location){Expression.apply(this,["yield",docs,location]),this.value=value,this.key=key})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("while",function(test,body,shortForm,docs,location){Statement.apply(this,["while",docs,location]),this.test=test,this.body=body,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("variadic",function(what,docs,location){Expr.apply(this,["variadic",docs,location]),this.what=what})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("variable",function(name,byref,curly,docs,location){Expr.apply(this,["variable",docs,location]),this.name=name,this.byref=byref||!1,this.curly=curly||!1})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0),UseItem=Statement.extends("useitem",function(name,alias,type,docs,location){Statement.apply(this,["useitem",docs,location]),this.name=name,this.alias=alias,this.type=type});UseItem.TYPE_CONST="const",UseItem.TYPE_FUNCTION="function",module.exports=UseItem},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("usegroup",function(name,type,items,docs,location){Statement.apply(this,["usegroup",docs,location]),this.name=name,this.type=type,this.items=items})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("unset",function(args,docs,location){Sys.apply(this,["unset",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(7);module.exports=Operation.extends("unary",function(type,what,docs,location){Operation.apply(this,["unary",docs,location]),this.type=type,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(6),KIND="typereference",TypeReference=Reference.extends(KIND,function(name,docs,location){Reference.apply(this,[KIND,docs,location]),this.name=name});TypeReference.types=["int","float","string","bool","object","array"],module.exports=TypeReference},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("try",function(body,catches,always,docs,location){Statement.apply(this,["try",docs,location]),this.body=body,this.catches=catches,this.always=always})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("traituse",function(traits,adaptations,docs,location){Node.apply(this,["traituse",docs,location]),this.traits=traits,this.adaptations=adaptations})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1),KIND="traitprecedence";module.exports=Node.extends(KIND,function(trait,method,instead,docs,location){Node.apply(this,[KIND,docs,location]),this.trait=trait,this.method=method,this.instead=instead})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("traitalias",function(trait,method,as,flags,docs,location){Node.apply(this,["traitalias",docs,location]),this.trait=trait,this.method=method,this.as=as,this.visibility="",flags&&(0===flags[0]?this.visibility="public":1===flags[0]?this.visibility="protected":2===flags[0]&&(this.visibility="private"))})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("trait",function(name,ext,impl,body,docs,location){Declaration.apply(this,["trait",name,docs,location]),this.extends=ext,this.implements=impl,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("throw",function(what,docs,location){Statement.apply(this,["throw",docs,location]),this.what=what})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("switch",function(test,body,shortForm,docs,location){Statement.apply(this,["switch",docs,location]),this.test=test,this.body=body,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("string",function(isDoubleQuote,value,unicode,raw,docs,location){Literal.apply(this,["string",value,raw,docs,location]),this.unicode=unicode,this.isDoubleQuote=isDoubleQuote})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(6),KIND="staticreference",StaticReference=Reference.extends(KIND,function(docs,location){Reference.apply(this,[KIND,docs,location])});module.exports=StaticReference},function(module,exports,__webpack_require__){"use strict";var Lookup=__webpack_require__(8);module.exports=Lookup.extends("staticlookup",function(what,offset,docs,location){Lookup.apply(this,["staticlookup",what,offset,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("static",function(items,docs,location){Statement.apply(this,["static",docs,location]),this.items=items})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("silent",function(expr,docs,location){Statement.apply(this,["silent",docs,location]),this.expr=expr})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(6),KIND="selfreference",SelfReference=Reference.extends(KIND,function(docs,location){Reference.apply(this,[KIND,docs,location])});module.exports=SelfReference},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("return",function(expr,docs,location){Node.apply(this,["return",docs,location]),this.expr=expr})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("retif",function(test,trueExpr,falseExpr,docs,location){Statement.apply(this,["retif",docs,location]),this.test=test,this.trueExpr=trueExpr,this.falseExpr=falseExpr})},function(module,exports,__webpack_require__){"use strict";var Lookup=__webpack_require__(8),KIND="propertylookup";module.exports=Lookup.extends(KIND,function(what,offset,docs,location){Lookup.apply(this,[KIND,what,offset,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("property",function(name,value,flags,docs,location){Declaration.apply(this,["property",name,docs,location]),this.value=value,this.parseFlags(flags)})},function(module,exports,__webpack_require__){"use strict";var Block=__webpack_require__(9);module.exports=Block.extends("program",function(children,errors,comments,tokens,docs,location){Block.apply(this,["program",children,docs,location]),this.errors=errors,comments&&(this.comments=comments),tokens&&(this.tokens=tokens)})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("print",function(args,docs,location){Sys.apply(this,["print",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(7);module.exports=Operation.extends("pre",function(type,what,docs,location){Operation.apply(this,["pre",docs,location]),this.type=type,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(7);module.exports=Operation.extends("post",function(type,what,docs,location){Operation.apply(this,["post",docs,location]),this.type=type,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(6),KIND="parentreference",ParentReference=Reference.extends(KIND,function(docs,location){Reference.apply(this,[KIND,docs,location])});module.exports=ParentReference},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("parameter",function(name,type,value,isRef,isVariadic,nullable,docs,location){Declaration.apply(this,["parameter",name,docs,location]),this.value=value,this.type=type,this.byref=isRef,this.variadic=isVariadic,this.nullable=nullable})},function(module,exports,__webpack_require__){"use strict";var Lookup=__webpack_require__(8);module.exports=Lookup.extends("offsetlookup",function(what,offset,docs,location){Lookup.apply(this,["offsetlookup",what,offset,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("number",function(value,raw,docs,location){Literal.apply(this,["number",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("nowdoc",function(value,raw,label,quote,docs,location){Literal.apply(this,["nowdoc",value,raw,docs,location]),this.label=label,this.quote=quote})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("new",function(what,args,docs,location){Statement.apply(this,["new",docs,location]),this.what=what,this.arguments=args})},function(module,exports,__webpack_require__){"use strict";var Block=__webpack_require__(9);module.exports=Block.extends("namespace",function(name,children,withBrackets,docs,location){Block.apply(this,["namespace",children,docs,location]),this.name=name,this.withBrackets=withBrackets||!1})},function(module,exports,__webpack_require__){"use strict";var fn=__webpack_require__(11);module.exports=fn.extends("method",function(){fn.apply(this,arguments),this.kind="method"})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("magic",function(value,raw,docs,location){Literal.apply(this,["magic",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("list",function(items,shortForm,docs,location){Sys.apply(this,["list",items,docs,location]),this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("label",function(name,docs,location){Node.apply(this,["label",docs,location]),this.name=name})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("isset",function(args,docs,location){Sys.apply(this,["isset",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("interface",function(name,ext,body,docs,location){Declaration.apply(this,["interface",name,docs,location]),this.extends=ext,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("inline",function(value,raw,docs,location){Literal.apply(this,["inline",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("include",function(once,require,target,docs,location){Statement.apply(this,["include",docs,location]),this.once=once,this.require=require,this.target=target})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("if",function(test,body,alternate,shortForm,docs,location){Statement.apply(this,["if",docs,location]),this.test=test,this.body=body,this.alternate=alternate,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1),Identifier=Node.extends("identifier",function(name,docs,location){Node.apply(this,["identifier",docs,location]),this.name=name});module.exports=Identifier},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("halt",function(after,docs,location){Statement.apply(this,["halt",docs,location]),this.after=after})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("goto",function(label,docs,location){Statement.apply(this,["goto",docs,location]),this.label=label})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("global",function(items,docs,location){Statement.apply(this,["global",docs,location]),this.items=items})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("foreach",function(source,key,value,body,shortForm,docs,location){Statement.apply(this,["foreach",docs,location]),this.source=source,this.key=key,this.value=value,this.shortForm=shortForm,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("for",function(init,test,increment,body,shortForm,docs,location){Statement.apply(this,["for",docs,location]),this.init=init,this.test=test,this.increment=increment,this.shortForm=shortForm,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0),KIND="expressionstatement";module.exports=Statement.extends(KIND,function(expr,docs,location){Statement.apply(this,[KIND,docs,location]),this.expression=expr})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("exit",function(status,useDie,docs,location){Statement.apply(this,["exit",docs,location]),this.status=status,this.useDie=useDie})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("eval",function(source,docs,location){Statement.apply(this,["eval",docs,location]),this.source=source})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("error",function(message,token,line,expected,docs,location){Node.apply(this,["error",docs,location]),this.message=message,this.token=token,this.line=line,this.expected=expected})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("entry",function(key,value,docs,location){Node.apply(this,["entry",docs,location]),this.key=key,this.value=value})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4),Encapsed=Literal.extends("encapsed",function(value,raw,type,docs,location){Literal.apply(this,["encapsed",value,raw,docs,location]),this.type=type});Encapsed.TYPE_STRING="string",Encapsed.TYPE_SHELL="shell",Encapsed.TYPE_HEREDOC="heredoc",Encapsed.TYPE_OFFSET="offset",module.exports=Encapsed},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("empty",function(args,docs,location){Sys.apply(this,["empty",args,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Sys=__webpack_require__(5);module.exports=Sys.extends("echo",function(args,shortForm,docs,location){Sys.apply(this,["echo",args,docs,location]),this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("do",function(test,body,docs,location){Statement.apply(this,["do",docs,location]),this.test=test,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Block=__webpack_require__(9),Declare=Block.extends("declare",function(what,body,mode,docs,location){Block.apply(this,["declare",body,docs,location]),this.what=what,this.mode=mode});Declare.MODE_SHORT="short",Declare.MODE_BLOCK="block",Declare.MODE_NONE="none",module.exports=Declare},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("continue",function(level,docs,location){Node.apply(this,["continue",docs,location]),this.level=level})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("constref",function(identifier,docs,location){Expr.apply(this,["constref",docs,location]),this.name=identifier})},function(module,exports,__webpack_require__){"use strict";var Comment=__webpack_require__(10);module.exports=Comment.extends("commentline",function(value,docs,location){Comment.apply(this,["commentline",value,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Comment=__webpack_require__(10);module.exports=Comment.extends("commentblock",function(value,docs,location){Comment.apply(this,["commentblock",value,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("closure",function(args,byref,uses,type,nullable,isStatic,docs,location){Statement.apply(this,["closure",docs,location]),this.uses=uses,this.arguments=args,this.byref=byref,this.type=type,this.nullable=nullable,this.isStatic=isStatic||!1,this.body=null})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("clone",function(what,docs,location){Statement.apply(this,["clone",docs,location]),this.what=what})},function(module,exports,__webpack_require__){"use strict";var Reference=__webpack_require__(6),KIND="classreference",ClassReference=Reference.extends(KIND,function ClassReference(name,isRelative,docs,location){Reference.apply(this,[KIND,docs,location]),isRelative?this.resolution=ClassReference.RELATIVE_NAME:1===name.length?this.resolution=ClassReference.UNQUALIFIED_NAME:""===name[0]?this.resolution=ClassReference.FULL_QUALIFIED_NAME:this.resolution=ClassReference.QUALIFIED_NAME,this.name=name.join("\\")});ClassReference.UNQUALIFIED_NAME="uqn",ClassReference.QUALIFIED_NAME="qn",ClassReference.FULL_QUALIFIED_NAME="fqn",ClassReference.RELATIVE_NAME="rn",module.exports=ClassReference},function(module,exports,__webpack_require__){"use strict";var Constant=__webpack_require__(12),KIND="classconstant";module.exports=Constant.extends(KIND,function(name,value,flags,docs,location){Constant.apply(this,[name,value,docs,location]),this.kind=KIND,this.parseFlags(flags)})},function(module,exports,__webpack_require__){"use strict";var Declaration=__webpack_require__(3);module.exports=Declaration.extends("class",function(name,ext,impl,body,flags,docs,location){Declaration.apply(this,["class",name,docs,location]),this.isAnonymous=!name,this.extends=ext,this.implements=impl,this.body=body,this.parseFlags(flags)})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("catch",function(body,what,variable,docs,location){Statement.apply(this,["catch",docs,location]),this.body=body,this.what=what,this.variable=variable})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(7);module.exports=Operation.extends("cast",function(type,raw,what,docs,location){Operation.apply(this,["cast",docs,location]),this.type=type,this.raw=raw,this.what=what})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("case",function(test,body,docs,location){Node.apply(this,["case",docs,location]),this.test=test,this.body=body})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("call",function(what,args,docs,location){Statement.apply(this,["call",docs,location]),this.what=what,this.arguments=args})},function(module,exports,__webpack_require__){"use strict";var Node=__webpack_require__(1);module.exports=Node.extends("break",function(level,docs,location){Node.apply(this,["break",docs,location]),this.level=level})},function(module,exports,__webpack_require__){"use strict";var Literal=__webpack_require__(4);module.exports=Literal.extends("boolean",function(value,raw,docs,location){Literal.apply(this,["boolean",value,raw,docs,location])})},function(module,exports,__webpack_require__){"use strict";var Operation=__webpack_require__(7);module.exports=Operation.extends("bin",function(type,left,right,docs,location){Operation.apply(this,["bin",docs,location]),this.type=type,this.left=left,this.right=right})},function(module,exports,__webpack_require__){"use strict";var Statement=__webpack_require__(0);module.exports=Statement.extends("assign",function(left,right,operator,docs,location){Statement.apply(this,["assign",docs,location]),this.operator=operator,this.left=left,this.right=right})},function(module,exports,__webpack_require__){"use strict";var Expr=__webpack_require__(2);module.exports=Expr.extends("array",function(shortForm,items,docs,location){Expr.apply(this,["array",docs,location]),this.items=items,this.shortForm=shortForm})},function(module,exports,__webpack_require__){"use strict";module.exports=function(line,column,offset){this.line=line,this.column=column,this.offset=offset}},function(module,exports,__webpack_require__){"use strict";module.exports=function(source,start,end){this.source=source,this.start=start,this.end=end}},function(module,exports,__webpack_require__){"use strict";var Location=__webpack_require__(95),Position=__webpack_require__(94),AST=function(withPositions,withSource){this.withPositions=withPositions,this.withSource=withSource};AST.prototype.position=function(parser){return new Position(parser.lexer.yylloc.first_line,parser.lexer.yylloc.first_column,parser.lexer.yylloc.first_offset)},AST.precedence={},[["or"],["xor"],["and"],["="],["?"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","!=","===","!==","<=>"],["<","<=",">",">="],["<<",">>"],["+","-","."],["*","/","%"],["!"],["instanceof"]].forEach(function(list,index){list.forEach(function(operator){AST.precedence[operator]=index+1})}),AST.prototype.resolvePrecedence=function(result){var buffer=void 0,lLevel=void 0,rLevel=void 0;return"bin"===result.kind?result.right&&!result.right.parenthesizedExpression&&("bin"===result.right.kind?(lLevel=AST.precedence[result.type],rLevel=AST.precedence[result.right.type],lLevel&&rLevel&&rLevel<=lLevel&&(buffer=result.right,result.right=result.right.left,buffer.left=this.resolvePrecedence(result),result=buffer)):"retif"===result.right.kind&&(lLevel=AST.precedence[result.type],rLevel=AST.precedence["?"],lLevel&&rLevel&&rLevel<=lLevel&&(buffer=result.right,result.right=result.right.test,buffer.test=this.resolvePrecedence(result),result=buffer))):"unary"===result.kind?result.what&&!result.what.parenthesizedExpression&&("bin"===result.what.kind?(buffer=result.what,result.what=result.what.left,buffer.left=this.resolvePrecedence(result),result=buffer):"retif"===result.what.kind&&(buffer=result.what,result.what=result.what.test,buffer.test=this.resolvePrecedence(result),result=buffer)):"retif"===result.kind?result.falseExpr&&"retif"===result.falseExpr.kind&&!result.falseExpr.parenthesizedExpression&&(buffer=result.falseExpr,result.falseExpr=buffer.test,buffer.test=this.resolvePrecedence(result),result=buffer):"assign"===result.kind&&result.right&&"bin"===result.right.kind&&!result.right.parenthesizedExpression&&(lLevel=AST.precedence["="],rLevel=AST.precedence[result.right.type],lLevel&&rLevel&&rLevel0?body(null,items):null)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_top_statements:function(){for(var result=[];this.token!==this.EOF&&"}"!==this.token;){var statement=this.read_top_statement();statement&&(Array.isArray(statement)?result=result.concat(statement):result.push(statement))}return result},read_top_statement:function(){switch(this.token){case this.tok.T_FUNCTION:return this.read_function(!1,!1);case this.tok.T_ABSTRACT:case this.tok.T_FINAL:var flag=this.read_class_scope();return this.token===this.tok.T_CLASS?this.read_class(flag):(this.error(this.tok.T_CLASS),this.next(),null);case this.tok.T_CLASS:return this.read_class([0,0,0]);case this.tok.T_INTERFACE:return this.read_interface();case this.tok.T_TRAIT:return this.read_trait();case this.tok.T_USE:return this.read_use_statement();case this.tok.T_CONST:return this.next().read_const_list();case this.tok.T_NAMESPACE:return this.read_namespace();case this.tok.T_HALT_COMPILER:var result=this.node("halt");return this.next().expect("(")&&this.next(),this.expect(")")&&this.next(),this.expect(";"),this.lexer.done=!0,result(this.lexer._input.substring(this.lexer.offset));default:return this.read_statement()}},read_inner_statements:function(){for(var result=[];this.token!=this.EOF&&"}"!==this.token;){var statement=this.read_inner_statement();statement&&(Array.isArray(statement)?result=result.concat(statement):result.push(statement))}return result},read_const_list:function(){var result=this.read_list(function(){this.expect(this.tok.T_STRING);var result=this.node("constant"),name=this.text();return this.next().expect("=")?result(name,this.next().read_expr()):result(name,null)},",",!1);return this.expectEndOfStatement(),result},read_declare_list:function(){for(var result={};this.token!=this.EOF&&")"!==this.token;){this.expect(this.tok.T_STRING);var name=this.text().toLowerCase();if(this.next().expect("=")?result[name]=this.next().read_expr():result[name]=null,","!==this.token)break;this.next()}return result},read_inner_statement:function(){switch(this.token){case this.tok.T_FUNCTION:return this.read_function(!1,!1);case this.tok.T_ABSTRACT:case this.tok.T_FINAL:var flag=this.read_class_scope();return this.token===this.tok.T_CLASS?this.read_class(flag):(this.error(this.tok.T_CLASS),this.next(),null);case this.tok.T_CLASS:return this.read_class([0,0,0]);case this.tok.T_INTERFACE:return this.read_interface();case this.tok.T_TRAIT:return this.read_trait();case this.tok.T_HALT_COMPILER:this.raiseError("__HALT_COMPILER() can only be used from the outermost scope");var node=this.node("halt");return this.next().expect("(")&&this.next(),this.expect(")")&&this.next(),node=node(this.lexer._input.substring(this.lexer.offset)),this.expect(";")&&this.next(),node;default:return this.read_statement()}},read_statement:function(){var result=void 0,expr=void 0,items=void 0,current=void 0,label=void 0;switch(this.token){case"{":return this.read_code_block(!1);case this.tok.T_IF:return this.read_if();case this.tok.T_SWITCH:return this.read_switch();case this.tok.T_FOR:return this.next().read_for();case this.tok.T_FOREACH:return this.next().read_foreach();case this.tok.T_WHILE:return this.next().read_while();case this.tok.T_DO:return this.next().read_do();case this.tok.T_COMMENT:return this.read_comment();case this.tok.T_DOC_COMMENT:return this.read_doc_comment();case this.tok.T_RETURN:return result=this.node("return"),expr=null,this.next().is("EOS")||(expr=this.read_expr()),this.expectEndOfStatement(),result(expr);case this.tok.T_BREAK:case this.tok.T_CONTINUE:result=this.node(this.token===this.tok.T_CONTINUE?"continue":"break");var level=null;return this.next(),";"!==this.token&&(level=this.read_expr()),this.expectEndOfStatement(),result(level);case this.tok.T_GLOBAL:return result=this.node("global"),items=this.next().read_list(this.read_simple_variable,","),this.expectEndOfStatement(),result(items);case this.tok.T_STATIC:return current=[this.token,this.lexer.getState()],result=this.node(),this.next().token===this.tok.T_DOUBLE_COLON?(this.lexer.tokens.push(current),expr=this.next().read_expr(),this.expectEndOfStatement(expr),result("expressionstatement",expr)):this.token===this.tok.T_FUNCTION?this.read_function(!0,[0,1,0]):(items=this.read_variable_declarations(),this.expectEndOfStatement(),result("static",items));case this.tok.T_ECHO:result=this.node("echo");var text=this.text(),shortForm="0?this.lexer._input[this.lexer.yylloc.first_offset-1]:null,fixFirstLine="\r"===prevChar||"\n"===prevChar;return fixFirstLine&&"\n"===prevChar&&this.lexer.yylloc.first_offset>1&&"\r"===this.lexer._input[this.lexer.yylloc.first_offset-2]&&(prevChar="\r\n"),result=this.node("inline"),this.next(),result(value,fixFirstLine?prevChar+value:value);case this.tok.T_UNSET:return result=this.node("unset"),this.next().expect("(")&&this.next(),items=this.read_list(this.read_variable,","),this.expect(")")&&this.next(),this.expect(";")&&this.next(),result(items);case this.tok.T_DECLARE:result=this.node("declare");var body=[],mode=void 0;this.next().expect("(")&&this.next();var what=this.read_declare_list();if(this.expect(")")&&this.next(),":"===this.token){for(this.next();this.token!=this.EOF&&this.token!==this.tok.T_ENDDECLARE;)body.push(this.read_top_statement());this.expect(this.tok.T_ENDDECLARE)&&this.next(),this.expectEndOfStatement(),mode=this.ast.declare.MODE_SHORT}else if("{"===this.token){for(this.next();this.token!=this.EOF&&"}"!==this.token;)body.push(this.read_top_statement());this.expect("}")&&this.next(),mode=this.ast.declare.MODE_BLOCK}else this.expect(";")&&this.next(),mode=this.ast.declare.MODE_NONE;return result(what,body,mode);case this.tok.T_TRY:return this.read_try();case this.tok.T_THROW:return result=this.node("throw"),expr=this.next().read_expr(),this.expectEndOfStatement(),result(expr);case";":return this.next(),null;case this.tok.T_STRING:return current=[this.token,this.lexer.getState()],label=this.text(),":"===this.next().token?(result=this.node("label"),this.next(),result(label)):(this.lexer.tokens.push(current),expr=this.next().read_expr(),this.expectEndOfStatement(),expr);case this.tok.T_GOTO:return result=this.node("goto"),label=null,this.next().expect(this.tok.T_STRING)&&(label=this.text(),this.next().expectEndOfStatement()),result(label);default:var statement=this.node("expressionstatement");return expr=this.read_expr(),this.expectEndOfStatement(expr),statement(expr)}},read_code_block:function(top){var result=this.node("block");this.expect("{")&&this.next();var body=top?this.read_top_statements():this.read_inner_statements();return this.expect("}")&&this.next(),result(null,body)}}},function(module,exports,__webpack_require__){"use strict";var specialChar={"\\r":"\r","\\n":"\n","\\t":"\t","\\v":String.fromCharCode(11),"\\e":String.fromCharCode(27),"\\f":String.fromCharCode(12),"\\\\":"\\","\\$":"$",'\\"':'"',"\\'":"'"};module.exports={resolve_special_chars:function(text,doubleQuote){return doubleQuote?text.replace(/\\[rntvef"'\\$]/g,function(seq){return specialChar[seq]}):text.replace(/\\['\\]/g,function(seq){return specialChar[seq]})},read_scalar:function(){if(this.is("T_MAGIC_CONST"))return this.get_magic_constant();var value=void 0,node=void 0;switch(this.token){case this.tok.T_CONSTANT_ENCAPSED_STRING:value=this.node("string");var text=this.text(),offset=0;"b"!==text[0]&&"B"!==text[0]||(offset=1);var isDoubleQuote='"'===text[offset];return this.next(),value=value(isDoubleQuote,this.resolve_special_chars(text.substring(offset+1,text.length-1),isDoubleQuote),1===offset,text),this.token===this.tok.T_DOUBLE_COLON?this.read_static_getter(value):value;case this.tok.T_START_HEREDOC:if("ST_NOWDOC"===this.lexer.curCondition){var start=this.lexer.yylloc.first_offset;node=this.node("nowdoc");var lastCh=(value=this.next().text())[value.length-1];"\n"===lastCh?value="\r"===value[value.length-2]?value.substring(0,value.length-2):value.substring(0,value.length-1):"\r"===lastCh&&(value=value.substring(0,value.length-1)),this.expect(this.tok.T_ENCAPSED_AND_WHITESPACE)&&this.next();var raw=this.lexer._input.substring(start,this.lexer.yylloc.last_offset);return node=node(value,raw,this.lexer.heredoc_label,'"'===raw[3]||"'"===raw[3]),this.expect(this.tok.T_END_HEREDOC)&&this.next(),node}return this.next().read_encapsed_string(this.tok.T_END_HEREDOC);case'"':return this.next().read_encapsed_string('"');case'b"':case'B"':return this.next(),this.lexer.yylloc.prev_offset-=1,this.read_encapsed_string('"');case this.tok.T_LNUMBER:case this.tok.T_DNUMBER:var result=this.node("number");return value=this.text(),this.next(),result(value,null);case this.tok.T_ARRAY:case"[":return this.read_array();default:var err=this.error("SCALAR");return this.next(),err}},read_dereferencable:function(expr){var result=void 0,offset=void 0,node=this.node("offsetlookup");return"["===this.token?(offset=this.next().read_expr(),this.expect("]")&&this.next(),result=node(expr,offset)):this.token===this.tok.T_DOLLAR_OPEN_CURLY_BRACES&&(result=node(expr,offset=this.read_encapsed_string_item(!1))),result},read_encapsed_string_item:function(isDoubleQuote){var result=this.node(),offset=void 0,node=void 0,name=void 0;if(this.token===this.tok.T_ENCAPSED_AND_WHITESPACE){var text=this.text();this.next(),result=result("string",!1,this.resolve_special_chars(text,isDoubleQuote),!1,text)}else if(this.token===this.tok.T_DOLLAR_OPEN_CURLY_BRACES){if(name=null,this.next().token===this.tok.T_STRING_VARNAME){name=this.node("variable");var varName=this.text();this.next(),"["===this.token?(name=name(varName,!1),node=this.node("offsetlookup"),offset=this.next().read_expr(),this.expect("]")&&this.next(),name=node(name,offset)):name=this.node("constref")(varName)}else name=this.read_expr();this.expect("}")&&this.next(),result=result("variable",name,!1,!0)}else if(this.token===this.tok.T_CURLY_OPEN)result.destroy(),"variable"===(result=this.next().read_variable(!1,!1,!1)).kind&&(result.curly=!0),this.expect("}")&&this.next();else if(this.token===this.tok.T_VARIABLE){if(result.destroy(),result=this.read_simple_variable(!1),"["===this.token&&(node=this.node("offsetlookup"),offset=this.next().read_encaps_var_offset(),this.expect("]")&&this.next(),result=node(result,offset)),this.token===this.tok.T_OBJECT_OPERATOR){node=this.node("propertylookup"),this.next().expect(this.tok.T_STRING);var what=this.node("constref");name=this.text(),this.next(),result=node(result,what(name))}}else{this.expect(this.tok.T_ENCAPSED_AND_WHITESPACE);var value=this.text();this.next(),result.destroy(),result=result("string",!1,value,!1,value)}return result},read_encapsed_string:function(expect){var start=this.lexer.yylloc.prev_offset,node=this.node("encapsed"),value=[],type=null;for(type="`"===expect?this.ast.encapsed.TYPE_SHELL:'"'===expect?this.ast.encapsed.TYPE_STRING:this.ast.encapsed.TYPE_HEREDOC;this.token!==expect&&this.token!==this.EOF;)value.push(this.read_encapsed_string_item(!0));return this.expect(expect)&&this.next(),node=node(value,this.lexer._input.substring(start-1,this.lexer.yylloc.first_offset),type),expect===this.tok.T_END_HEREDOC&&(node.label=this.lexer.heredoc_label),node},get_magic_constant:function(){var result=this.node("magic"),name=this.text();return this.next(),result(name.toUpperCase(),name)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_namespace:function(){var result=this.node("namespace"),body=void 0;if(this.expect(this.tok.T_NAMESPACE)&&this.next(),"{"==this.token)return this.currentNamespace=[""],body=this.next().read_top_statements(),this.expect("}")&&this.next(),result([""],body,!0);var name=this.read_namespace_name();return";"==this.token?(this.currentNamespace=name,body=this.next().read_top_statements(),this.expect(this.EOF),result(name.name,body,!1)):"{"==this.token?(this.currentNamespace=name,body=this.next().read_top_statements(),this.expect("}")&&this.next(),result(name.name,body,!0)):"("===this.token?(name.resolution=this.ast.reference.RELATIVE_NAME,name.name=name.name.substring(1),this.node("call")(name,this.read_function_argument_list())):(this.error(["{",";"]),this.currentNamespace=name,body=this.read_top_statements(),this.expect(this.EOF),result(name,body,!1))},read_namespace_name:function(){var result=this.node(),relative=!1;this.token===this.tok.T_NAMESPACE&&(this.next().expect(this.tok.T_NS_SEPARATOR)&&this.next(),relative=!0);var names=this.read_list(this.tok.T_STRING,this.tok.T_NS_SEPARATOR,!0);if(!relative&&1===names.length){if("parent"===names[0])return result("parentreference");if("self"===names[0])return result("selfreference")}return result("classreference",names,relative)},read_use_statement:function(){var result=this.node("usegroup"),items=[],name=null;this.expect(this.tok.T_USE)&&this.next();var type=this.read_use_type();return items.push(this.read_use_declaration(!1)),","===this.token?items=items.concat(this.next().read_use_declarations(!1)):"{"===this.token&&(name=items[0].name,items=this.next().read_use_declarations(null===type),this.expect("}")&&this.next()),result=result(name,type,items),this.expect(";")&&this.next(),result},read_use_declaration:function(typed){var result=this.node("useitem"),type=null;typed&&(type=this.read_use_type());var name=this.read_namespace_name(),alias=this.read_use_alias();return result(name.name,alias,type)},read_use_declarations:function(typed){for(var result=[this.read_use_declaration(typed)];","===this.token;){if(this.next(),typed){if(this.token!==this.tok.T_FUNCTION&&this.token!==this.tok.T_CONST&&this.token!==this.tok.T_STRING)break}else if(this.token!==this.tok.T_STRING)break;result.push(this.read_use_declaration(typed))}return result},read_use_alias:function(){var result=null;return this.token===this.tok.T_AS&&this.next().expect(this.tok.T_STRING)&&(result=this.text(),this.next()),result},read_use_type:function(){return this.token===this.tok.T_FUNCTION?(this.next(),this.ast.useitem.TYPE_FUNCTION):this.token===this.tok.T_CONST?(this.next(),this.ast.useitem.TYPE_CONST):null}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_start:function(){return this.token==this.tok.T_NAMESPACE?this.read_namespace():this.read_top_statement()}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_while:function(){var test,result=this.node("while"),body=null,shortForm=!1;return this.expect("(")&&this.next(),test=this.read_expr(),this.expect(")")&&this.next(),":"===this.token?(shortForm=!0,body=this.read_short_form(this.tok.T_ENDWHILE)):body=this.read_statement(),result(test,body,shortForm)},read_do:function(){var body,result=this.node("do"),test=null;return body=this.read_statement(),this.expect(this.tok.T_WHILE)&&(this.next().expect("(")&&this.next(),test=this.read_expr(),this.expect(")")&&this.next(),this.expect(";")&&this.next()),result(test,body)},read_for:function(){var result=this.node("for"),init=[],test=[],increment=[],body=null,shortForm=!1;return this.expect("(")&&this.next(),";"!==this.token?(init=this.read_list(this.read_expr,","),this.expect(";")&&this.next()):this.next(),";"!==this.token?(test=this.read_list(this.read_expr,","),this.expect(";")&&this.next()):this.next(),")"!==this.token?(increment=this.read_list(this.read_expr,","),this.expect(")")&&this.next()):this.next(),":"===this.token?(shortForm=!0,body=this.read_short_form(this.tok.T_ENDFOR)):body=this.read_statement(),result(init,test,increment,body,shortForm)},read_foreach:function(){var source,result=this.node("foreach"),key=null,value=null,body=null,shortForm=!1;return this.expect("(")&&this.next(),source=this.read_expr(),this.expect(this.tok.T_AS)&&(this.next(),value=this.read_foreach_variable(),this.token===this.tok.T_DOUBLE_ARROW&&(key=value,value=this.next().read_foreach_variable())),key&&"list"===key.kind&&this.raiseError("Fatal Error : Cannot use list as key element"),this.expect(")")&&this.next(),":"===this.token?(shortForm=!0,body=this.read_short_form(this.tok.T_ENDFOREACH)):body=this.read_statement(),result(source,key,value,body,shortForm)},read_foreach_variable:function(){if(this.token===this.tok.T_LIST||"["===this.token){var isShort="["===this.token,result=this.node("list");this.next(),!isShort&&this.expect("(")&&this.next();var assignList=this.read_array_pair_list(isShort);return this.expect(isShort?"]":")")&&this.next(),result(assignList,isShort)}return this.read_variable(!1,!1,!1)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_if:function(){var test,result=this.node("if"),body=null,alternate=null,shortForm=!1;if(test=this.next().read_if_expr(),":"===this.token){shortForm=!0,this.next(),body=this.node("block");for(var items=[];this.token!==this.EOF&&this.token!==this.tok.T_ENDIF;){if(this.token===this.tok.T_ELSEIF){alternate=this.read_elseif_short();break}if(this.token===this.tok.T_ELSE){alternate=this.read_else_short();break}items.push(this.read_inner_statement())}body=body(null,items),this.expect(this.tok.T_ENDIF)&&this.next(),this.expectEndOfStatement()}else body=this.read_statement(),this.token===this.tok.T_ELSEIF?alternate=this.read_if():this.token===this.tok.T_ELSE&&(alternate=this.next().read_statement());return result(test,body,alternate,shortForm)},read_if_expr:function(){this.expect("(")&&this.next();var result=this.read_expr();return this.expect(")")&&this.next(),result},read_elseif_short:function(){var test,result=this.node("if"),alternate=null,body=null,items=[];for(test=this.next().read_if_expr(),this.expect(":")&&this.next(),body=this.node("block");this.token!=this.EOF&&this.token!==this.tok.T_ENDIF;){if(this.token===this.tok.T_ELSEIF){alternate=this.read_elseif_short();break}if(this.token===this.tok.T_ELSE){alternate=this.read_else_short();break}items.push(this.read_inner_statement())}return result(test,body=body(null,items),alternate,!0)},read_else_short:function(){var body=this.node("block");this.next().expect(":")&&this.next();for(var items=[];this.token!=this.EOF&&this.token!==this.tok.T_ENDIF;)items.push(this.read_inner_statement());return body(null,items)}}},function(module,exports,__webpack_require__){"use strict";module.exports={is_reference:function(){return"&"==this.token&&(this.next(),!0)},is_variadic:function(){return this.token===this.tok.T_ELLIPSIS&&(this.next(),!0)},read_function:function(closure,flag){var result=this.read_function_declaration(closure?1:flag?2:0,flag&&1===flag[1]);return flag&&1==flag[2]?(result.parseFlags(flag),this.expect(";")&&this.next()):(this.expect("{")&&(result.body=this.read_code_block(!1),result.loc&&result.body.loc&&(result.loc.end=result.body.loc.end)),!closure&&flag&&result.parseFlags(flag)),result},read_function_declaration:function(type,isStatic){var nodeName="function";1===type?nodeName="closure":2===type&&(nodeName="method");var result=this.node(nodeName);this.expect(this.tok.T_FUNCTION)&&this.next();var isRef=this.is_reference(),name=!1,use=[],returnType=null,nullable=!1;if(1!==type){var nameNode=this.node("identifier");2===type?this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(name=this.text(),this.next()):this.error("IDENTIFIER"):(this.expect(this.tok.T_STRING)&&(name=this.text()),this.next()),name=nameNode(name)}this.expect("(")&&this.next();var params=this.read_parameter_list();return this.expect(")")&&this.next(),1===type&&this.token===this.tok.T_USE&&(this.next().expect("(")&&this.next(),use=this.read_list(this.read_lexical_var,","),this.expect(")")&&this.next()),":"===this.token&&("?"===this.next().token&&(nullable=!0,this.next()),returnType=this.read_type()),1===type?result(params,isRef,use,returnType,nullable,isStatic):result(name,params,isRef,returnType,nullable)},read_lexical_var:function(){var result=this.node("variable"),isRef=!1;"&"===this.token&&(isRef=!0,this.next()),this.expect(this.tok.T_VARIABLE);var name=this.text().substring(1);return this.next(),result(name,isRef,!1)},read_parameter_list:function(){var result=[];if(")"!=this.token)for(;this.token!=this.EOF;){if(result.push(this.read_parameter()),","!=this.token){if(")"==this.token)break;this.error([",",")"]);break}this.next()}return result},read_parameter:function(){var type,node=this.node("parameter"),name=null,value=null,nullable=!1;"?"===this.token&&(this.next(),nullable=!0),type=this.read_type(),nullable&&!type&&this.raiseError("Expecting a type definition combined with nullable operator");var isRef=this.is_reference(),isVariadic=this.is_variadic();return this.expect(this.tok.T_VARIABLE)&&(name=this.text().substring(1),this.next()),"="==this.token&&(value=this.next().read_expr()),node(name,type,value,isRef,isVariadic,nullable)},read_function_argument_list:function(){var result=[],wasVariadic=!1;if(this.expect("(")&&this.next(),")"!==this.token)for(;this.token!=this.EOF;){var argument=this.read_argument_list();if(argument&&(result.push(argument),"variadic"===argument.kind?wasVariadic=!0:wasVariadic&&this.raiseError("Unexpected argument after a variadic argument")),","!==this.token)break;this.next()}return this.expect(")")&&this.next(),result},read_argument_list:function(){return this.token===this.tok.T_ELLIPSIS?this.node("variadic")(this.next().read_expr()):this.read_expr()},read_type:function(){var result=this.node("typereference");if(this.token===this.tok.T_ARRAY||this.token===this.tok.T_CALLABLE){var _type=this.text();return this.next(),result(_type)}if(this.token===this.tok.T_STRING){var _type2=this.text(),backup=[this.token,this.lexer.getState()];return this.next(),this.token!==this.tok.T_NS_SEPARATOR&&this.ast.typereference.types.indexOf(_type2.toLowerCase())>-1?result(_type2):(this.lexer.tokens.push(backup),this.next(),this.read_namespace_name())}return this.token===this.tok.T_NAMESPACE||this.token===this.tok.T_NS_SEPARATOR?this.read_namespace_name():null}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_expr:function(){var result=this.node(),expr=this.read_expr_item();if("|"===this.token)return result("bin","|",expr,this.next().read_expr());if("&"===this.token)return result("bin","&",expr,this.next().read_expr());if("^"===this.token)return result("bin","^",expr,this.next().read_expr());if("."===this.token)return result("bin",".",expr,this.next().read_expr());if("+"===this.token)return result("bin","+",expr,this.next().read_expr());if("-"===this.token)return result("bin","-",expr,this.next().read_expr());if("*"===this.token)return result("bin","*",expr,this.next().read_expr());if("/"===this.token)return result("bin","/",expr,this.next().read_expr());if("%"===this.token)return result("bin","%",expr,this.next().read_expr());if(this.token===this.tok.T_POW)return result("bin","**",expr,this.next().read_expr());if(this.token===this.tok.T_SL)return result("bin","<<",expr,this.next().read_expr());if(this.token===this.tok.T_SR)return result("bin",">>",expr,this.next().read_expr());if(this.token===this.tok.T_BOOLEAN_OR)return result("bin","||",expr,this.next().read_expr());if(this.token===this.tok.T_LOGICAL_OR)return result("bin","or",expr,this.next().read_expr());if(this.token===this.tok.T_BOOLEAN_AND)return result("bin","&&",expr,this.next().read_expr());if(this.token===this.tok.T_LOGICAL_AND)return result("bin","and",expr,this.next().read_expr());if(this.token===this.tok.T_LOGICAL_XOR)return result("bin","xor",expr,this.next().read_expr());if(this.token===this.tok.T_IS_IDENTICAL)return result("bin","===",expr,this.next().read_expr());if(this.token===this.tok.T_IS_NOT_IDENTICAL)return result("bin","!==",expr,this.next().read_expr());if(this.token===this.tok.T_IS_EQUAL)return result("bin","==",expr,this.next().read_expr());if(this.token===this.tok.T_IS_NOT_EQUAL)return result("bin","!=",expr,this.next().read_expr());if("<"===this.token)return result("bin","<",expr,this.next().read_expr());if(">"===this.token)return result("bin",">",expr,this.next().read_expr());if(this.token===this.tok.T_IS_SMALLER_OR_EQUAL)return result("bin","<=",expr,this.next().read_expr());if(this.token===this.tok.T_IS_GREATER_OR_EQUAL)return result("bin",">=",expr,this.next().read_expr());if(this.token===this.tok.T_SPACESHIP)return result("bin","<=>",expr,this.next().read_expr());if(this.token===this.tok.T_INSTANCEOF)return result("bin","instanceof",expr,this.next().read_expr());if(this.token===this.tok.T_COALESCE)return result("bin","??",expr,this.next().read_expr());if("?"===this.token){var trueArg=null;return":"!==this.next().token&&(trueArg=this.read_expr()),this.expect(":")&&this.next(),result("retif",expr,trueArg,this.read_expr())}return result.destroy(expr),expr},read_expr_cast:function(type){return this.node("cast")(type,this.text(),this.next().read_expr())},read_expr_item:function(){var result=void 0,expr=void 0;if("@"===this.token)return this.node("silent")(this.next().read_expr());if("+"===this.token)return this.node("unary")("+",this.next().read_expr());if("!"===this.token)return this.node("unary")("!",this.next().read_expr());if("~"===this.token)return this.node("unary")("~",this.next().read_expr());if("-"===this.token)return result=this.node(),this.next(),this.token===this.tok.T_LNUMBER||this.token===this.tok.T_DNUMBER?(result=result("number","-"+this.text(),null),this.next(),result):result("unary","-",this.read_expr());if("("===this.token)return(expr=this.next().read_expr()).parenthesizedExpression=!0,this.expect(")")&&this.next(),this.handleDereferencable(expr);if("`"===this.token)return this.next().read_encapsed_string("`");if(this.token===this.tok.T_LIST){var assign=null,isInner=this.innerList;result=this.node("list"),isInner||(assign=this.node("assign")),this.next().expect("(")&&this.next(),this.innerList||(this.innerList=!0);var assignList=this.read_array_pair_list(!1);this.expect(")")&&this.next();for(var hasItem=!1,i=0;i>=");case this.tok.T_INC:return isConst&&this.error("VARIABLE"),this.next(),result("post","+",expr);case this.tok.T_DEC:return isConst&&this.error("VARIABLE"),this.next(),result("post","-",expr);default:result.destroy(expr)}}else{if(this.is("SCALAR")){if(result=this.node(),"array"===(expr=this.read_scalar()).kind&&expr.shortForm&&"="===this.token){var list=this.node("list")(expr.items,!0);return expr.loc&&(list.loc=expr.loc),result("assign",list,this.next().read_expr(),"=")}return result.destroy(expr),this.handleDereferencable(expr)}this.error("EXPR"),this.next()}return expr},read_new_expr:function(){var result=this.node("new"),args=[];if(this.token===this.tok.T_CLASS){var what=this.node("class"),propExtends=null,propImplements=null,body=null;return"("===this.next().token&&(args=this.read_function_argument_list()),this.token==this.tok.T_EXTENDS&&(propExtends=this.next().read_namespace_name()),this.token==this.tok.T_IMPLEMENTS&&(propImplements=this.next().read_name_list()),this.expect("{")&&(body=this.next().read_class_body()),result(what(null,propExtends,propImplements,body,[0,0,0]),args)}var name=this.read_class_name_reference();return"("===this.token&&(args=this.read_function_argument_list()),result(name,args)},read_class_name_reference:function(){if(this.token===this.tok.T_NS_SEPARATOR||this.token===this.tok.T_STRING||this.token===this.tok.T_NAMESPACE){var result=this.read_namespace_name();return this.token===this.tok.T_DOUBLE_COLON&&(result=this.read_static_getter(result)),result}if(this.is("VARIABLE"))return this.read_variable(!0,!1,!1);this.expect([this.tok.T_STRING,"VARIABLE"])},handleDereferencable:function(expr){for(;this.token!==this.EOF;)if(this.token===this.tok.T_OBJECT_OPERATOR||this.token===this.tok.T_DOUBLE_COLON)expr=this.recursive_variable_chain_scan(expr,!1,!1,!0);else if(this.token===this.tok.T_CURLY_OPEN||"["===this.token)expr=this.read_dereferencable(expr);else{if("("!==this.token)return expr;expr=this.node("call")(expr,this.read_function_argument_list())}return expr}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_comment:function(){var text=this.text(),result=this.ast.prepare("/*"===text.substring(0,2)?"commentblock":"commentline",null,this),prev=this.prev;return this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset],this.lex(),result=result(text),this.prev=prev,result},read_doc_comment:function(){var result=this.ast.prepare("commentblock",null,this),text=this.text(),prev=this.prev;return this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset],this.lex(),result=result(text),this.prev=prev,result}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_class:function(flag){var result=this.node("class");this.expect(this.tok.T_CLASS),this.next().expect(this.tok.T_STRING);var propName=this.text(),propExtends=null,propImplements=null;return this.next().token==this.tok.T_EXTENDS&&(propExtends=this.next().read_namespace_name()),this.token==this.tok.T_IMPLEMENTS&&(propImplements=this.next().read_name_list()),this.expect("{"),result(propName,propExtends,propImplements,this.next().read_class_body(),flag)},read_class_scope:function(){var result=this.token;return result==this.tok.T_FINAL?(this.next(),[0,0,2]):result==this.tok.T_ABSTRACT?(this.next(),[0,0,1]):[0,0,0]},read_class_body:function(){for(var result=[];this.token!==this.EOF&&"}"!==this.token;)if(this.token!==this.tok.T_COMMENT)if(this.token!==this.tok.T_DOC_COMMENT)if(this.token!==this.tok.T_USE){var flags=this.read_member_flags(!1);if(this.token!==this.tok.T_CONST)if(this.token===this.tok.T_VAR&&(this.next().expect(this.tok.T_VARIABLE),flags[0]=null,flags[1]=0),this.token===this.tok.T_VARIABLE){var variables=this.read_variable_list(flags);this.expect(";"),this.next(),result=result.concat(variables)}else this.token===this.tok.T_FUNCTION?result.push(this.read_function(!1,flags)):(this.error([this.tok.T_CONST,this.tok.T_VARIABLE,this.tok.T_FUNCTION]),this.next());else{var constants=this.read_constant_list(flags);this.expect(";")&&this.next(),result=result.concat(constants)}}else result=result.concat(this.next().read_trait_use_statement());else result.push(this.read_doc_comment());else result.push(this.read_comment());return this.expect("}"),this.next(),result},read_variable_list:function(flags){return this.read_list(function(){var result=this.node("property");this.expect(this.tok.T_VARIABLE);var name=this.text().substring(1);return this.next(),";"===this.token||","===this.token?result(name,null,flags):"="===this.token?result(name,this.next().read_expr(),flags):(this.expect([",",";","="]),result(name,null,flags))},",")},read_constant_list:function(flags){return this.expect(this.tok.T_CONST)&&this.next(),this.read_list(function(){var result=this.node("classconstant"),name=null,value=null;return this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(name=this.text(),this.next()):this.expect("IDENTIFIER"),this.expect("=")&&(value=this.next().read_expr()),result(name,value,flags)},",")},read_member_flags:function(asInterface){var result=[-1,-1,-1];if(this.is("T_MEMBER_FLAGS")){var idx=0,val=0;do{switch(this.token){case this.tok.T_PUBLIC:idx=0,val=0;break;case this.tok.T_PROTECTED:idx=0,val=1;break;case this.tok.T_PRIVATE:idx=0,val=2;break;case this.tok.T_STATIC:idx=1,val=1;break;case this.tok.T_ABSTRACT:idx=2,val=1;break;case this.tok.T_FINAL:idx=2,val=2}asInterface&&(0==idx&&2==val?(this.expect([this.tok.T_PUBLIC,this.tok.T_PROTECTED]),val=-1):2==idx&&1==val&&(this.error(),val=-1)),-1!==result[idx]?this.error():-1!==val&&(result[idx]=val)}while(this.next().is("T_MEMBER_FLAGS"))}return-1==result[1]&&(result[1]=0),-1==result[2]&&(result[2]=0),result},read_interface:function(){var result=this.node("interface"),name=null,body=null,propExtends=null;return this.expect(this.tok.T_INTERFACE)&&this.next(),this.expect(this.tok.T_STRING)&&(name=this.text(),this.next()),this.token===this.tok.T_EXTENDS&&(propExtends=this.next().read_name_list()),this.expect("{")&&(body=this.next().read_interface_body()),result(name,propExtends,body)},read_interface_body:function(){for(var result=[];this.token!==this.EOF&&"}"!==this.token;)if(this.token!==this.tok.T_COMMENT)if(this.token!==this.tok.T_DOC_COMMENT){var flags=this.read_member_flags(!0);if(this.token==this.tok.T_CONST){var constants=this.read_constant_list(flags);this.expect(";")&&this.next(),result=result.concat(constants)}else if(this.token===this.tok.T_FUNCTION){var method=this.read_function_declaration(2,flags);method.parseFlags(flags),result.push(method),this.expect(";")&&this.next()}else this.error([this.tok.T_CONST,this.tok.T_FUNCTION]),this.next()}else result.push(this.read_doc_comment());else result.push(this.read_comment());return this.expect("}")&&this.next(),result},read_trait:function(){var result=this.node("trait"),propName=null,propExtends=null,propImplements=null,body=null;return this.expect(this.tok.T_TRAIT)&&this.next(),this.expect(this.tok.T_STRING)&&(propName=this.text()),this.next().token==this.tok.T_EXTENDS&&(propExtends=this.next().read_namespace_name()),this.token==this.tok.T_IMPLEMENTS&&(propImplements=this.next().read_name_list()),this.expect("{")&&(body=this.next().read_class_body()),result(propName,propExtends,propImplements,body)},read_trait_use_statement:function(){for(var node=this.node("traituse"),traits=[this.read_namespace_name()],adaptations=null;","===this.token;)traits.push(this.next().read_namespace_name());if("{"===this.token){for(adaptations=[];this.next().token!==this.EOF&&"}"!==this.token;)adaptations.push(this.read_trait_use_alias()),this.expect(";");this.expect("}")&&this.next()}else this.expect(";")&&this.next();return node(traits,adaptations)},read_trait_use_alias:function(){var node=this.node(),trait=null,method=void 0;if(this.is("IDENTIFIER")?(method=this.text(),this.next()):(method=this.read_namespace_name(),this.token===this.tok.T_DOUBLE_COLON?(this.next(),this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(trait=method,method=this.text(),this.next()):this.expect(this.tok.T_STRING)):method=method.name),this.token===this.tok.T_INSTEADOF)return node("traitprecedence",trait,method,this.next().read_name_list());if(this.token===this.tok.T_AS){var flags=null,alias=null;return this.next().is("T_MEMBER_FLAGS")&&(flags=this.read_member_flags()),this.token===this.tok.T_STRING||this.php7&&this.is("IDENTIFIER")?(alias=this.text(),this.next()):!1===flags&&this.expect(this.tok.T_STRING),node("traitalias",trait,method,alias,flags)}return this.expect([this.tok.T_AS,this.tok.T_INSTEADOF]),node("traitalias",trait,method,null,null)}}},function(module,exports,__webpack_require__){"use strict";module.exports={read_array:function(){var expect=null,shortForm=!1,result=this.node("array");this.token===this.tok.T_ARRAY?(this.next().expect("("),expect=")"):(shortForm=!0,expect="]");var items=[];return this.next().token!==expect&&(items=this.read_array_pair_list(shortForm)),this.expect(expect),this.next(),result(shortForm,items)},read_array_pair_list:function(shortForm){var self=this;return this.read_list(function(){return self.read_array_pair(shortForm)},",",!0)},read_array_pair:function(shortForm){if(","===this.token||!shortForm&&")"===this.token||shortForm&&"]"===this.token)return null;if("&"===this.token)return this.next().read_variable(!0,!1,!0);var entry=this.node("entry"),expr=this.read_expr();return this.token===this.tok.T_DOUBLE_ARROW?"&"===this.next().token?entry(expr,this.next().read_variable(!0,!1,!0)):entry(expr,this.read_expr()):expr},read_dim_offset:function(){return"]"!=this.token&&this.read_expr()}}},function(module,exports,__webpack_require__){"use strict";function isNumber(n){return"."!=n&&","!=n&&!isNaN(parseFloat(n))&&isFinite(n)}var parser=function(lexer,ast){this.lexer=lexer,this.ast=ast,this.tok=lexer.tok,this.EOF=lexer.EOF,this.token=null,this.prev=null,this.debug=!1,this.php7=!0,this.extractDoc=!1,this.extractTokens=!1,this.suppressErrors=!1;var mapIt=function(item){return[item,null]};this.entries={IDENTIFIER:new Map([this.tok.T_ABSTRACT,this.tok.T_ARRAY,this.tok.T_AS,this.tok.T_BREAK,this.tok.T_CALLABLE,this.tok.T_CASE,this.tok.T_CATCH,this.tok.T_CLASS,this.tok.T_CLASS_C,this.tok.T_CLONE,this.tok.T_CONST,this.tok.T_CONTINUE,this.tok.T_DECLARE,this.tok.T_DEFAULT,this.tok.T_DIR,this.tok.T_DO,this.tok.T_ECHO,this.tok.T_ELSE,this.tok.T_ELSEIF,this.tok.T_EMPTY,this.tok.T_ENDDECLARE,this.tok.T_ENDFOR,this.tok.T_ENDFOREACH,this.tok.T_ENDIF,this.tok.T_ENDSWITCH,this.tok.T_ENDWHILE,this.tok.T_EVAL,this.tok.T_EXIT,this.tok.T_EXTENDS,this.tok.T_FILE,this.tok.T_FINAL,this.tok.T_FINALLY,this.tok.T_FUNC_C,this.tok.T_FOR,this.tok.T_FOREACH,this.tok.T_FUNCTION,this.tok.T_GLOBAL,this.tok.T_GOTO,this.tok.T_IF,this.tok.T_IMPLEMENTS,this.tok.T_INCLUDE,this.tok.T_INCLUDE_ONCE,this.tok.T_INSTANCEOF,this.tok.T_INSTEADOF,this.tok.T_INTERFACE,this.tok.T_ISSET,this.tok.T_LINE,this.tok.T_LIST,this.tok.T_LOGICAL_AND,this.tok.T_LOGICAL_OR,this.tok.T_LOGICAL_XOR,this.tok.T_METHOD_C,this.tok.T_NAMESPACE,this.tok.T_NEW,this.tok.T_NS_C,this.tok.T_PRINT,this.tok.T_PRIVATE,this.tok.T_PROTECTED,this.tok.T_PUBLIC,this.tok.T_REQUIRE,this.tok.T_REQUIRE_ONCE,this.tok.T_RETURN,this.tok.T_STATIC,this.tok.T_SWITCH,this.tok.T_THROW,this.tok.T_TRAIT,this.tok.T_TRY,this.tok.T_UNSET,this.tok.T_USE,this.tok.T_VAR,this.tok.T_WHILE,this.tok.T_YIELD].map(mapIt)),VARIABLE:new Map([this.tok.T_VARIABLE,"$","&",this.tok.T_NS_SEPARATOR,this.tok.T_STRING,this.tok.T_NAMESPACE,this.tok.T_STATIC].map(mapIt)),SCALAR:new Map([this.tok.T_CONSTANT_ENCAPSED_STRING,this.tok.T_START_HEREDOC,this.tok.T_LNUMBER,this.tok.T_DNUMBER,this.tok.T_ARRAY,"[",this.tok.T_CLASS_C,this.tok.T_TRAIT_C,this.tok.T_FUNC_C,this.tok.T_METHOD_C,this.tok.T_LINE,this.tok.T_FILE,this.tok.T_DIR,this.tok.T_NS_C,'"','b"','B"',"-",this.tok.T_NS_SEPARATOR].map(mapIt)),T_MAGIC_CONST:new Map([this.tok.T_CLASS_C,this.tok.T_TRAIT_C,this.tok.T_FUNC_C,this.tok.T_METHOD_C,this.tok.T_LINE,this.tok.T_FILE,this.tok.T_DIR,this.tok.T_NS_C].map(mapIt)),T_MEMBER_FLAGS:new Map([this.tok.T_PUBLIC,this.tok.T_PRIVATE,this.tok.T_PROTECTED,this.tok.T_STATIC,this.tok.T_ABSTRACT,this.tok.T_FINAL].map(mapIt)),EOS:new Map([";",this.EOF,this.tok.T_INLINE_HTML].map(mapIt)),EXPR:new Map(["@","-","+","!","~","(","`",this.tok.T_LIST,this.tok.T_CLONE,this.tok.T_INC,this.tok.T_DEC,this.tok.T_NEW,this.tok.T_ISSET,this.tok.T_EMPTY,this.tok.T_INCLUDE,this.tok.T_INCLUDE_ONCE,this.tok.T_REQUIRE,this.tok.T_REQUIRE_ONCE,this.tok.T_EVAL,this.tok.T_INT_CAST,this.tok.T_DOUBLE_CAST,this.tok.T_STRING_CAST,this.tok.T_ARRAY_CAST,this.tok.T_OBJECT_CAST,this.tok.T_BOOL_CAST,this.tok.T_UNSET_CAST,this.tok.T_EXIT,this.tok.T_PRINT,this.tok.T_YIELD,this.tok.T_STATIC,this.tok.T_FUNCTION,this.tok.T_VARIABLE,"$",this.tok.T_NS_SEPARATOR,this.tok.T_STRING,this.tok.T_STRING,this.tok.T_CONSTANT_ENCAPSED_STRING,this.tok.T_START_HEREDOC,this.tok.T_LNUMBER,this.tok.T_DNUMBER,this.tok.T_ARRAY,"[",this.tok.T_CLASS_C,this.tok.T_TRAIT_C,this.tok.T_FUNC_C,this.tok.T_METHOD_C,this.tok.T_LINE,this.tok.T_FILE,this.tok.T_DIR,this.tok.T_NS_C].map(mapIt))}};parser.prototype.getTokenName=function(token){return isNumber(token)?token==this.EOF?"the end of file (EOF)":this.lexer.engine.tokens.values[token]:"'"+token+"'"},parser.prototype.parse=function(code,filename){this._errors=[],this.filename=filename||"eval",this.currentNamespace=[""],this.extractDoc?this._docs=[]:this._docs=null,this.extractTokens?this._tokens=[]:this._tokens=null,this._docIndex=0,this.lexer.setInput(code),this.lexer.all_tokens=this.extractTokens,this.lexer.comment_tokens=this.extractDoc,this.length=this.lexer._input.length,this.innerList=!1,this.innerListForm=!1;var program=this.node("program"),childs=[];for(this.next();this.token!=this.EOF;){var node=this.read_start();null!==node&&void 0!==node&&(Array.isArray(node)?childs=childs.concat(node):childs.push(node))}return this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset],program(childs,this._errors,this._docs,this._tokens)},parser.prototype.raiseError=function(message,msgExpect,expect,token){if(message+=" on line "+this.lexer.yylloc.first_line,!this.suppressErrors){var err=new SyntaxError(message,this.filename,this.lexer.yylloc.first_line);throw err.lineNumber=this.lexer.yylloc.first_line,err.fileName=this.filename,err.columnNumber=this.lexer.yylloc.first_column,err}var node=this.ast.prepare("error",null,this)(message,token,this.lexer.yylloc.first_line,expect);return this._errors.push(node),node},parser.prototype.error=function(expect){var msg="Parse Error : syntax error",token=this.getTokenName(this.token),msgExpect="";if(this.token!==this.EOF){if(isNumber(this.token)){var symbol=this.text();symbol.length>10&&(symbol=symbol.substring(0,7)+"..."),token="'"+symbol+"' ("+token+")"}msg+=", unexpected "+token}return expect&&!Array.isArray(expect)&&((isNumber(expect)||1===expect.length)&&(msgExpect=", expecting "+this.getTokenName(expect)),msg+=msgExpect),this.raiseError(msg,msgExpect,expect,token)},parser.prototype.node=function(name){if(this.extractDoc){var docs=null;this._docIndex"+this.lexer.yytext+"< @--\x3e"+line),this},parser.prototype.expect=function(token){if(Array.isArray(token)){if(-1===token.indexOf(this.token))return this.error(token),!1}else if(this.token!=token)return this.error(token),!1;return!0},parser.prototype.text=function(){return this.lexer.yytext},parser.prototype.next=function(){if(";"===this.token&&";"!==this.lexer.yytext||(this.prev=[this.lexer.yylloc.last_line,this.lexer.yylloc.last_column,this.lexer.offset]),this.lex(),this.debug&&this.showlog(),this.extractDoc)for(;this.token===this.tok.T_COMMENT||this.token===this.tok.T_DOC_COMMENT;)this.token===this.tok.T_COMMENT?this._docs.push(this.read_comment()):this._docs.push(this.read_doc_comment());return this},parser.prototype.lex=function(){if(this.extractTokens)do{if(this.token=this.lexer.lex()||this.EOF,this.token===this.EOF)return this;var entry=this.lexer.yytext;if(entry=this.lexer.engine.tokens.values.hasOwnProperty(this.token)?[this.lexer.engine.tokens.values[this.token],entry,this.lexer.yylloc.first_line,this.lexer.yylloc.first_offset,this.lexer.offset]:[null,entry,this.lexer.yylloc.first_line,this.lexer.yylloc.first_offset,this.lexer.offset],this._tokens.push(entry),this.token===this.tok.T_CLOSE_TAG)return this.token=";",this;if(this.token===this.tok.T_OPEN_TAG_WITH_ECHO)return this.token=this.tok.T_ECHO,this}while(this.token===this.tok.T_WHITESPACE||!this.extractDoc&&(this.token===this.tok.T_COMMENT||this.token===this.tok.T_DOC_COMMENT)||this.token===this.tok.T_OPEN_TAG);else this.token=this.lexer.lex()||this.EOF;return this},parser.prototype.is=function(type){return Array.isArray(type)?-1!==type.indexOf(this.token):this.entries[type].has(this.token)},[__webpack_require__(112),__webpack_require__(111),__webpack_require__(110),__webpack_require__(109),__webpack_require__(108),__webpack_require__(107),__webpack_require__(106),__webpack_require__(105),__webpack_require__(104),__webpack_require__(103),__webpack_require__(102),__webpack_require__(101),__webpack_require__(100),__webpack_require__(99),__webpack_require__(98)].forEach(function(ext){for(var k in ext)parser.prototype[k]=ext[k]}),module.exports=parser},function(module,exports,__webpack_require__){"use strict";module.exports={is_NUM:function(){var ch=this._input.charCodeAt(this.offset-1);return ch>47&&ch<58},is_LABEL:function(){var ch=this._input.charCodeAt(this.offset-1);return ch>96&&ch<123||ch>64&&ch<91||95===ch||ch>47&&ch<58||ch>126},is_LABEL_START:function(){var ch=this._input.charCodeAt(this.offset-1);return ch>96&&ch<123||ch>64&&ch<91||95===ch||ch>126},consume_LABEL:function(){for(;this.offset?@".indexOf(ch)},is_WHITESPACE:function(){var ch=this._input[this.offset-1];return" "===ch||"\t"===ch||"\n"===ch||"\r"===ch},is_TABSPACE:function(){var ch=this._input[this.offset-1];return" "===ch||"\t"===ch},consume_TABSPACE:function(){for(;this.offset47&&ch<58||ch>64&&ch<71||ch>96&&ch<103}}},function(module,exports,__webpack_require__){"use strict";module.exports={T_STRING:function(){var token=this.yytext.toLowerCase(),id=this.keywords[token];if("number"!=typeof id)if("yield"===token)this.php7&&this.tryMatch(" from")?(this.consume(5),id=this.tok.T_YIELD_FROM):id=this.tok.T_YIELD;else if(id=this.tok.T_STRING,"b"===token||"B"===token){var ch=this.input(1);if('"'===ch)return this.ST_DOUBLE_QUOTES();if("'"===ch)return this.T_CONSTANT_ENCAPSED_STRING();ch&&this.unput(1)}return id},consume_TOKEN:function(){var ch=this._input[this.offset-1],fn=this.tokenTerminals[ch];return fn?fn.apply(this,[]):this.yytext},tokenTerminals:{$:function(){return this.offset++,this.is_LABEL_START()?(this.offset--,this.consume_LABEL(),this.tok.T_VARIABLE):(this.offset--,"$")},"-":function(){var nchar=this._input[this.offset];return">"===nchar?(this.begin("ST_LOOKING_FOR_PROPERTY").input(),this.tok.T_OBJECT_OPERATOR):"-"===nchar?(this.input(),this.tok.T_DEC):"="===nchar?(this.input(),this.tok.T_MINUS_EQUAL):"-"},"\\":function(){return this.tok.T_NS_SEPARATOR},"/":function(){return"="===this._input[this.offset]?(this.input(),this.tok.T_DIV_EQUAL):"/"},":":function(){return":"===this._input[this.offset]?(this.input(),this.tok.T_DOUBLE_COLON):":"},"(":function(){var initial=this.offset;if(this.input(),this.is_TABSPACE()&&this.consume_TABSPACE().input(),this.is_LABEL_START()){var yylen=this.yytext.length;this.consume_LABEL();var castToken=this.yytext.substring(yylen-1).toLowerCase(),castId=this.castKeywords[castToken];if("number"==typeof castId&&(this.input(),this.is_TABSPACE()&&this.consume_TABSPACE().input(),")"===this._input[this.offset-1]))return castId}return this.unput(this.offset-initial),"("},"=":function(){var nchar=this._input[this.offset];return">"===nchar?(this.input(),this.tok.T_DOUBLE_ARROW):"="===nchar?"="===this._input[this.offset+1]?(this.consume(2),this.tok.T_IS_IDENTICAL):(this.input(),this.tok.T_IS_EQUAL):"="},"+":function(){var nchar=this._input[this.offset];return"+"===nchar?(this.input(),this.tok.T_INC):"="===nchar?(this.input(),this.tok.T_PLUS_EQUAL):"+"},"!":function(){return"="===this._input[this.offset]?"="===this._input[this.offset+1]?(this.consume(2),this.tok.T_IS_NOT_IDENTICAL):(this.input(),this.tok.T_IS_NOT_EQUAL):"!"},"?":function(){return this.php7&&"?"===this._input[this.offset]?(this.input(),this.tok.T_COALESCE):"?"},"<":function(){var nchar=this._input[this.offset];return"<"===nchar?"="===(nchar=this._input[this.offset+1])?(this.consume(2),this.tok.T_SL_EQUAL):"<"===nchar&&this.is_HEREDOC()?this.tok.T_START_HEREDOC:(this.input(),this.tok.T_SL):"="===nchar?(this.input(),this.php7&&">"===this._input[this.offset]?(this.input(),this.tok.T_SPACESHIP):this.tok.T_IS_SMALLER_OR_EQUAL):">"===nchar?(this.input(),this.tok.T_IS_NOT_EQUAL):"<"},">":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_IS_GREATER_OR_EQUAL):">"===nchar?"="===(nchar=this._input[this.offset+1])?(this.consume(2),this.tok.T_SR_EQUAL):(this.input(),this.tok.T_SR):">"},"*":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_MUL_EQUAL):"*"===nchar?(this.input(),"="===this._input[this.offset]?(this.input(),this.tok.T_POW_EQUAL):this.tok.T_POW):"*"},".":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_CONCAT_EQUAL):"."===nchar&&"."===this._input[this.offset+1]?(this.consume(2),this.tok.T_ELLIPSIS):"."},"%":function(){return"="===this._input[this.offset]?(this.input(),this.tok.T_MOD_EQUAL):"%"},"&":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_AND_EQUAL):"&"===nchar?(this.input(),this.tok.T_BOOLEAN_AND):"&"},"|":function(){var nchar=this._input[this.offset];return"="===nchar?(this.input(),this.tok.T_OR_EQUAL):"|"===nchar?(this.input(),this.tok.T_BOOLEAN_OR):"|"},"^":function(){return"="===this._input[this.offset]?(this.input(),this.tok.T_XOR_EQUAL):"^"}}}},function(module,exports,__webpack_require__){"use strict";module.exports={T_CONSTANT_ENCAPSED_STRING:function(){for(var ch=void 0;this.offset2&&this.appendToken(this.tok.T_ENCAPSED_AND_WHITESPACE,this.yytext.length-prefix),this.unput(this.yytext.length-prefix),this.begin("ST_DOUBLE_QUOTES"),this.yytext},isDOC_MATCH:function(){if(this._input.substring(this.offset-1,this.offset-1+this.heredoc_label.length)===this.heredoc_label){var ch=this._input[this.offset-1+this.heredoc_label.length];if("\n"===ch||"\r"===ch||";"===ch)return!0}return!1},matchST_NOWDOC:function(){if(this.isDOC_MATCH())return this.consume(this.heredoc_label.length),this.popState(),this.tok.T_END_HEREDOC;for(var ch=this._input[this.offset-1];this.offset2?(this.appendToken(this.tok.T_DOLLAR_OPEN_CURLY_BRACES,2),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START()){var yyoffset=this.offset,next=this.consume_VARIABLE();return this.yytext.length>this.offset-yyoffset+2?(this.appendToken(next,this.offset-yyoffset+2),this.unput(this.offset-yyoffset+2),this.tok.T_ENCAPSED_AND_WHITESPACE):next}}else if("{"===ch){if("$"===(ch=this.input()))return this.begin("ST_IN_SCRIPTING"),this.yytext.length>2?(this.appendToken(this.tok.T_CURLY_OPEN,1),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):(this.unput(1),this.tok.T_CURLY_OPEN)}else ch=this.input();return this.tok.T_ENCAPSED_AND_WHITESPACE},consume_VARIABLE:function(){this.consume_LABEL();var ch=this.input();if("["==ch)return this.unput(1),this.begin("ST_VAR_OFFSET"),this.tok.T_VARIABLE;if("-"===ch){if(">"===this.input())return this.input(),this.is_LABEL_START()&&this.begin("ST_LOOKING_FOR_PROPERTY"),this.unput(3),this.tok.T_VARIABLE;this.unput(2)}else ch&&this.unput(1);return this.tok.T_VARIABLE},matchST_BACKQUOTE:function(){var ch=this.input();if("$"===ch){if("{"===(ch=this.input()))return this.begin("ST_LOOKING_FOR_VARNAME"),this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START())return this.consume_VARIABLE()}else if("{"===ch){if("$"===this._input[this.offset])return this.begin("ST_IN_SCRIPTING"),this.tok.T_CURLY_OPEN}else if("`"===ch)return this.popState(),"`";for(;this.offset2?(this.appendToken(this.tok.T_DOLLAR_OPEN_CURLY_BRACES,2),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START()){var yyoffset=this.offset,next=this.consume_VARIABLE();return this.yytext.length>this.offset-yyoffset+2?(this.appendToken(next,this.offset-yyoffset+2),this.unput(this.offset-yyoffset+2),this.tok.T_ENCAPSED_AND_WHITESPACE):next}continue}if("{"===ch){if("$"===(ch=this.input()))return this.begin("ST_IN_SCRIPTING"),this.yytext.length>2?(this.appendToken(this.tok.T_CURLY_OPEN,1),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):(this.unput(1),this.tok.T_CURLY_OPEN);continue}}ch=this.input()}return this.tok.T_ENCAPSED_AND_WHITESPACE},matchST_DOUBLE_QUOTES:function(){var ch=this.input();if("$"===ch){if("{"===(ch=this.input()))return this.begin("ST_LOOKING_FOR_VARNAME"),this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START())return this.consume_VARIABLE()}else if("{"===ch){if("$"===this._input[this.offset])return this.begin("ST_IN_SCRIPTING"),this.tok.T_CURLY_OPEN}else if('"'===ch)return this.popState(),'"';for(;this.offset2?(this.appendToken(this.tok.T_DOLLAR_OPEN_CURLY_BRACES,2),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):this.tok.T_DOLLAR_OPEN_CURLY_BRACES;if(this.is_LABEL_START()){var yyoffset=this.offset,next=this.consume_VARIABLE();return this.yytext.length>this.offset-yyoffset+2?(this.appendToken(next,this.offset-yyoffset+2),this.unput(this.offset-yyoffset+2),this.tok.T_ENCAPSED_AND_WHITESPACE):next}ch&&this.unput(1)}else if("{"===ch){if("$"===(ch=this.input()))return this.begin("ST_IN_SCRIPTING"),this.yytext.length>2?(this.appendToken(this.tok.T_CURLY_OPEN,1),this.unput(2),this.tok.T_ENCAPSED_AND_WHITESPACE):(this.unput(1),this.tok.T_CURLY_OPEN);ch&&this.unput(1)}}ch=this.input()}return this.tok.T_ENCAPSED_AND_WHITESPACE}}},function(module,exports,__webpack_require__){"use strict";module.exports={matchST_IN_SCRIPTING:function(){var ch=this.input();switch(ch){case" ":case"\t":case"\n":case"\r":case"\r\n":return this.T_WHITESPACE();case"#":return this.T_COMMENT();case"/":return"/"===this._input[this.offset]?this.T_COMMENT():"*"===this._input[this.offset]?(this.input(),this.T_DOC_COMMENT()):this.consume_TOKEN();case"'":return this.T_CONSTANT_ENCAPSED_STRING();case'"':return this.ST_DOUBLE_QUOTES();case"`":return this.begin("ST_BACKQUOTE"),"`";case"?":if(!this.aspTagMode&&this.tryMatch(">")){this.input();var nextCH=this._input[this.offset];return"\n"!==nextCH&&"\r"!==nextCH||this.input(),this.conditionStack.length>1&&this.begin("INITIAL"),this.tok.T_CLOSE_TAG}return this.consume_TOKEN();case"%":return this.aspTagMode&&">"===this._input[this.offset]?(this.input(),"\n"!==(ch=this._input[this.offset])&&"\r"!==ch||this.input(),this.aspTagMode=!1,this.conditionStack.length>1&&this.begin("INITIAL"),this.tok.T_CLOSE_TAG):this.consume_TOKEN();case"{":return this.begin("ST_IN_SCRIPTING"),"{";case"}":return this.conditionStack.length>2&&this.popState(),"}";default:if("."===ch){if(ch=this.input(),this.is_NUM())return this.consume_NUM();ch&&this.unput(1)}if(this.is_NUM())return this.consume_NUM();if(this.is_LABEL_START())return this.consume_LABEL().T_STRING();if(this.is_TOKEN())return this.consume_TOKEN()}throw new Error('Bad terminal sequence "'+ch+'" at line '+this.yylineno+" (offset "+this.offset+")")},T_WHITESPACE:function(){for(;this.offset"===(ch=this.input()))return this.tok.T_OBJECT_OPERATOR;ch&&this.unput(1)}else{if(this.is_WHITESPACE())return this.tok.T_WHITESPACE;if(this.is_LABEL_START())return this.consume_LABEL(),this.popState(),this.tok.T_STRING}return this.popState(),ch&&this.unput(1),!1},matchST_LOOKING_FOR_VARNAME:function(){var ch=this.input();if(this.popState(),this.begin("ST_IN_SCRIPTING"),this.is_LABEL_START()){if(this.consume_LABEL(),"["===(ch=this.input())||"}"===ch)return this.unput(1),this.tok.T_STRING_VARNAME;this.unput(this.yytext.length)}else ch&&this.unput(1);return!1},matchST_VAR_OFFSET:function(){var ch=this.input();if(this.is_NUM())return this.consume_NUM(),this.tok.T_NUM_STRING;if("]"===ch)return this.popState(),"]";if("$"===ch){if(this.input(),this.is_LABEL_START())return this.consume_LABEL(),this.tok.T_VARIABLE;throw new Error("Unexpected terminal")}if(this.is_LABEL_START())return this.consume_LABEL(),this.tok.T_STRING;if(this.is_WHITESPACE()||"\\"===ch||"'"===ch||"#"===ch)return this.tok.T_ENCAPSED_AND_WHITESPACE;if("["===ch||"{"===ch||"}"===ch||'"'===ch||"`"===ch||this.is_TOKEN())return ch;throw new Error("Unexpected terminal")}}},function(module,exports){var cachedSetTimeout,cachedClearTimeout,process=module.exports={};function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(fun){if(cachedSetTimeout===setTimeout)return setTimeout(fun,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(fun,0);try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}!function(){try{cachedSetTimeout="function"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout="function"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var currentQueue,queue=[],draining=!1,queueIndex=-1;function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var timeout=runTimeout(cleanUpNextTick);draining=!0;for(var len=queue.length;len;){for(currentQueue=queue,queue=[];++queueIndex1)for(var i=1;i1&&"INITIAL"===this.conditionStack[this.conditionStack.length-1]?this.popState():this.begin("ST_IN_SCRIPTING"),this},matchINITIAL:function(){for(;this.offset0&&this.tok.T_INLINE_HTML}}},function(module,exports,__webpack_require__){"use strict";module.exports={T_COMMENT:function(){for(;this.offset"===this._input[this.offset])return this.unput(1),this.tok.T_COMMENT;if("%"===ch&&this.aspTagMode&&">"===this._input[this.offset])return this.unput(1),this.tok.T_COMMENT}return this.tok.T_COMMENT},T_DOC_COMMENT:function(){var ch=this.input(),token=this.tok.T_COMMENT;if("*"===ch){if(ch=this.input(),this.is_WHITESPACE()&&(token=this.tok.T_DOC_COMMENT),"/"===ch)return token;this.unput(1)}for(;this.offset=this.size,!this.all_tokens&&this.mode_eval?(this.conditionStack=["INITIAL"],this.begin("ST_IN_SCRIPTING")):(this.conditionStack=[],this.begin("INITIAL")),this},lexer.prototype.input=function(){var ch=this._input[this.offset];return ch?(this.yytext+=ch,this.offset++,"\r"===ch&&"\n"===this._input[this.offset]&&(this.yytext+="\n",this.offset++),"\n"===ch||"\r"===ch?(this.yylloc.last_line=++this.yylineno,this.yyprevcol=this.yylloc.last_column,this.yylloc.last_column=0):this.yylloc.last_column++,ch):""},lexer.prototype.unput=function(size){if(1===size)this.offset--,"\n"===this._input[this.offset]&&"\r"===this._input[this.offset-1]&&(this.offset--,size++),"\r"===this._input[this.offset]||"\n"===this._input[this.offset]?(this.yylloc.last_line--,this.yylineno--,this.yylloc.last_column=this.yyprevcol):this.yylloc.last_column--,this.yytext=this.yytext.substring(0,this.yytext.length-size);else if(size>0)if(this.offset-=size,size0?this.conditionStack.pop():this.conditionStack[0];if(this.curCondition=this.conditionStack[this.conditionStack.length-1],this.stateCb=this["match"+this.curCondition],"function"!=typeof this.stateCb)throw new Error('Undefined condition state "'+this.curCondition+'"');return condition},lexer.prototype.next=function(){var token=void 0;if(this._input||(this.done=!0),this.yylloc.first_offset=this.offset,this.yylloc.first_line=this.yylloc.last_line,this.yylloc.first_column=this.yylloc.last_column,this.yytext="",this.done)return this.yylloc.prev_offset=this.yylloc.first_offset,this.yylloc.prev_line=this.yylloc.first_line,this.yylloc.prev_column=this.yylloc.first_column,this.EOF;if(this.tokens.length>0?(token=this.tokens.shift(),"object"===_typeof(token[1])?this.setState(token[1]):this.consume(token[1]),token=token[0]):token=this.stateCb.apply(this,[]),this.offset>=this.size&&0===this.tokens.length&&(this.done=!0),this.debug){var tName=token;tName="number"==typeof tName?this.engine.tokens.values[tName]:'"'+tName+'"';var e=new Error(tName+"\tfrom "+this.yylloc.first_line+","+this.yylloc.first_column+"\t - to "+this.yylloc.last_line+","+this.yylloc.last_column+'\t"'+this.yytext+'"');console.error(e.stack)}return token},[__webpack_require__(122),__webpack_require__(121),__webpack_require__(120),__webpack_require__(118),__webpack_require__(117),__webpack_require__(116),__webpack_require__(115),__webpack_require__(114)].forEach(function(ext){for(var k in ext)lexer.prototype[k]=ext[k]}),module.exports=lexer},function(module,exports){var toString={}.toString;module.exports=Array.isArray||function(arr){return"[object Array]"==toString.call(arr)}},function(module,exports){exports.read=function(buffer,offset,isLE,mLen,nBytes){var e,m,eLen=8*nBytes-mLen-1,eMax=(1<>1,nBits=-7,i=isLE?nBytes-1:0,d=isLE?-1:1,s=buffer[offset+i];for(i+=d,e=s&(1<<-nBits)-1,s>>=-nBits,nBits+=eLen;nBits>0;e=256*e+buffer[offset+i],i+=d,nBits-=8);for(m=e&(1<<-nBits)-1,e>>=-nBits,nBits+=mLen;nBits>0;m=256*m+buffer[offset+i],i+=d,nBits-=8);if(0===e)e=1-eBias;else{if(e===eMax)return m?NaN:1/0*(s?-1:1);m+=Math.pow(2,mLen),e-=eBias}return(s?-1:1)*m*Math.pow(2,e-mLen)},exports.write=function(buffer,value,offset,isLE,mLen,nBytes){var e,m,c,eLen=8*nBytes-mLen-1,eMax=(1<>1,rt=23===mLen?Math.pow(2,-24)-Math.pow(2,-77):0,i=isLE?0:nBytes-1,d=isLE?1:-1,s=value<0||0===value&&1/value<0?1:0;for(value=Math.abs(value),isNaN(value)||value===1/0?(m=isNaN(value)?1:0,e=eMax):(e=Math.floor(Math.log(value)/Math.LN2),value*(c=Math.pow(2,-e))<1&&(e--,c*=2),(value+=e+eBias>=1?rt/c:rt*Math.pow(2,1-eBias))*c>=2&&(e++,c/=2),e+eBias>=eMax?(m=0,e=eMax):e+eBias>=1?(m=(value*c-1)*Math.pow(2,mLen),e+=eBias):(m=value*Math.pow(2,eBias-1)*Math.pow(2,mLen),e=0));mLen>=8;buffer[offset+i]=255&m,i+=d,m/=256,mLen-=8);for(e=e<0;buffer[offset+i]=255&e,i+=d,e/=256,eLen-=8);buffer[offset+i-d]|=128*s}},function(module,exports,__webpack_require__){"use strict";exports.byteLength=function(b64){var lens=getLens(b64),validLen=lens[0],placeHoldersLen=lens[1];return 3*(validLen+placeHoldersLen)/4-placeHoldersLen},exports.toByteArray=function(b64){for(var tmp,lens=getLens(b64),validLen=lens[0],placeHoldersLen=lens[1],arr=new Arr(function(b64,validLen,placeHoldersLen){return 3*(validLen+placeHoldersLen)/4-placeHoldersLen}(0,validLen,placeHoldersLen)),curByte=0,len=placeHoldersLen>0?validLen-4:validLen,i=0;i>16&255,arr[curByte++]=tmp>>8&255,arr[curByte++]=255&tmp;2===placeHoldersLen&&(tmp=revLookup[b64.charCodeAt(i)]<<2|revLookup[b64.charCodeAt(i+1)]>>4,arr[curByte++]=255&tmp);1===placeHoldersLen&&(tmp=revLookup[b64.charCodeAt(i)]<<10|revLookup[b64.charCodeAt(i+1)]<<4|revLookup[b64.charCodeAt(i+2)]>>2,arr[curByte++]=tmp>>8&255,arr[curByte++]=255&tmp);return arr},exports.fromByteArray=function(uint8){for(var tmp,len=uint8.length,extraBytes=len%3,parts=[],i=0,len2=len-extraBytes;ilen2?len2:i+16383));1===extraBytes?(tmp=uint8[len-1],parts.push(lookup[tmp>>2]+lookup[tmp<<4&63]+"==")):2===extraBytes&&(tmp=(uint8[len-2]<<8)+uint8[len-1],parts.push(lookup[tmp>>10]+lookup[tmp>>4&63]+lookup[tmp<<2&63]+"="));return parts.join("")};for(var lookup=[],revLookup=[],Arr="undefined"!=typeof Uint8Array?Uint8Array:Array,code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,len=code.length;i0)throw new Error("Invalid string. Length must be a multiple of 4");var validLen=b64.indexOf("=");return-1===validLen&&(validLen=len),[validLen,validLen===len?0:4-validLen%4]}function encodeChunk(uint8,start,end){for(var tmp,num,output=[],i=start;i>18&63]+lookup[num>>12&63]+lookup[num>>6&63]+lookup[63&num]);return output.join("")}revLookup["-".charCodeAt(0)]=62,revLookup["_".charCodeAt(0)]=63},function(module,exports){var g;g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){"use strict";(function(global){ /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ -var base64=__webpack_require__(125),ieee754=__webpack_require__(124),isArray=__webpack_require__(123);function kMaxLength(){return Buffer.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function createBuffer(that,length){if(kMaxLength()=kMaxLength())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kMaxLength().toString(16)+" bytes");return 0|length}function byteLength(string,encoding){if(Buffer.isBuffer(string))return string.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(string)||string instanceof ArrayBuffer))return string.byteLength;"string"!=typeof string&&(string=""+string);var len=string.length;if(0===len)return 0;for(var loweredCase=!1;;)switch(encoding){case"ascii":case"latin1":case"binary":return len;case"utf8":case"utf-8":case void 0:return utf8ToBytes(string).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*len;case"hex":return len>>>1;case"base64":return base64ToBytes(string).length;default:if(loweredCase)return utf8ToBytes(string).length;encoding=(""+encoding).toLowerCase(),loweredCase=!0}}function swap(b,n,m){var i=b[n];b[n]=b[m],b[m]=i}function bidirectionalIndexOf(buffer,val,byteOffset,encoding,dir){if(0===buffer.length)return-1;if("string"==typeof byteOffset?(encoding=byteOffset,byteOffset=0):byteOffset>2147483647?byteOffset=2147483647:byteOffset<-2147483648&&(byteOffset=-2147483648),byteOffset=+byteOffset,isNaN(byteOffset)&&(byteOffset=dir?0:buffer.length-1),byteOffset<0&&(byteOffset=buffer.length+byteOffset),byteOffset>=buffer.length){if(dir)return-1;byteOffset=buffer.length-1}else if(byteOffset<0){if(!dir)return-1;byteOffset=0}if("string"==typeof val&&(val=Buffer.from(val,encoding)),Buffer.isBuffer(val))return 0===val.length?-1:arrayIndexOf(buffer,val,byteOffset,encoding,dir);if("number"==typeof val)return val&=255,Buffer.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?dir?Uint8Array.prototype.indexOf.call(buffer,val,byteOffset):Uint8Array.prototype.lastIndexOf.call(buffer,val,byteOffset):arrayIndexOf(buffer,[val],byteOffset,encoding,dir);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(arr,val,byteOffset,encoding,dir){var i,indexSize=1,arrLength=arr.length,valLength=val.length;if(void 0!==encoding&&("ucs2"===(encoding=String(encoding).toLowerCase())||"ucs-2"===encoding||"utf16le"===encoding||"utf-16le"===encoding)){if(arr.length<2||val.length<2)return-1;indexSize=2,arrLength/=2,valLength/=2,byteOffset/=2}function read(buf,i){return 1===indexSize?buf[i]:buf.readUInt16BE(i*indexSize)}if(dir){var foundIndex=-1;for(i=byteOffset;iarrLength&&(byteOffset=arrLength-valLength),i=byteOffset;i>=0;i--){for(var found=!0,j=0;jremaining&&(length=remaining):length=remaining;var strLen=string.length;if(strLen%2!=0)throw new TypeError("Invalid hex string");length>strLen/2&&(length=strLen/2);for(var i=0;i>8,lo=c%256,byteArray.push(lo),byteArray.push(hi);return byteArray}(string,buf.length-offset),buf,offset,length)}function base64Slice(buf,start,end){return 0===start&&end===buf.length?base64.fromByteArray(buf):base64.fromByteArray(buf.slice(start,end))}function utf8Slice(buf,start,end){end=Math.min(buf.length,end);for(var res=[],i=start;i239?4:firstByte>223?3:firstByte>191?2:1;if(i+bytesPerSequence<=end)switch(bytesPerSequence){case 1:firstByte<128&&(codePoint=firstByte);break;case 2:128==(192&(secondByte=buf[i+1]))&&(tempCodePoint=(31&firstByte)<<6|63&secondByte)>127&&(codePoint=tempCodePoint);break;case 3:secondByte=buf[i+1],thirdByte=buf[i+2],128==(192&secondByte)&&128==(192&thirdByte)&&(tempCodePoint=(15&firstByte)<<12|(63&secondByte)<<6|63&thirdByte)>2047&&(tempCodePoint<55296||tempCodePoint>57343)&&(codePoint=tempCodePoint);break;case 4:secondByte=buf[i+1],thirdByte=buf[i+2],fourthByte=buf[i+3],128==(192&secondByte)&&128==(192&thirdByte)&&128==(192&fourthByte)&&(tempCodePoint=(15&firstByte)<<18|(63&secondByte)<<12|(63&thirdByte)<<6|63&fourthByte)>65535&&tempCodePoint<1114112&&(codePoint=tempCodePoint)}null===codePoint?(codePoint=65533,bytesPerSequence=1):codePoint>65535&&(codePoint-=65536,res.push(codePoint>>>10&1023|55296),codePoint=56320|1023&codePoint),res.push(codePoint),i+=bytesPerSequence}return function(codePoints){var len=codePoints.length;if(len<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,codePoints);var res="",i=0;for(;ithis.length)return"";if((void 0===end||end>this.length)&&(end=this.length),end<=0)return"";if((end>>>=0)<=(start>>>=0))return"";for(encoding||(encoding="utf8");;)switch(encoding){case"hex":return hexSlice(this,start,end);case"utf8":case"utf-8":return utf8Slice(this,start,end);case"ascii":return asciiSlice(this,start,end);case"latin1":case"binary":return latin1Slice(this,start,end);case"base64":return base64Slice(this,start,end);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,start,end);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(encoding+"").toLowerCase(),loweredCase=!0}}.apply(this,arguments)},Buffer.prototype.equals=function(b){if(!Buffer.isBuffer(b))throw new TypeError("Argument must be a Buffer");return this===b||0===Buffer.compare(this,b)},Buffer.prototype.inspect=function(){var str="",max=exports.INSPECT_MAX_BYTES;return this.length>0&&(str=this.toString("hex",0,max).match(/.{2}/g).join(" "),this.length>max&&(str+=" ... ")),""},Buffer.prototype.compare=function(target,start,end,thisStart,thisEnd){if(!Buffer.isBuffer(target))throw new TypeError("Argument must be a Buffer");if(void 0===start&&(start=0),void 0===end&&(end=target?target.length:0),void 0===thisStart&&(thisStart=0),void 0===thisEnd&&(thisEnd=this.length),start<0||end>target.length||thisStart<0||thisEnd>this.length)throw new RangeError("out of range index");if(thisStart>=thisEnd&&start>=end)return 0;if(thisStart>=thisEnd)return-1;if(start>=end)return 1;if(start>>>=0,end>>>=0,thisStart>>>=0,thisEnd>>>=0,this===target)return 0;for(var x=thisEnd-thisStart,y=end-start,len=Math.min(x,y),thisCopy=this.slice(thisStart,thisEnd),targetCopy=target.slice(start,end),i=0;iremaining)&&(length=remaining),string.length>0&&(length<0||offset<0)||offset>this.length)throw new RangeError("Attempt to write outside buffer bounds");encoding||(encoding="utf8");for(var loweredCase=!1;;)switch(encoding){case"hex":return hexWrite(this,string,offset,length);case"utf8":case"utf-8":return utf8Write(this,string,offset,length);case"ascii":return asciiWrite(this,string,offset,length);case"latin1":case"binary":return latin1Write(this,string,offset,length);case"base64":return base64Write(this,string,offset,length);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,string,offset,length);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(""+encoding).toLowerCase(),loweredCase=!0}},Buffer.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var MAX_ARGUMENTS_LENGTH=4096;function asciiSlice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;ilen)&&(end=len);for(var out="",i=start;ilength)throw new RangeError("Trying to access beyond buffer length")}function checkInt(buf,value,offset,ext,max,min){if(!Buffer.isBuffer(buf))throw new TypeError('"buffer" argument must be a Buffer instance');if(value>max||valuebuf.length)throw new RangeError("Index out of range")}function objectWriteUInt16(buf,value,offset,littleEndian){value<0&&(value=65535+value+1);for(var i=0,j=Math.min(buf.length-offset,2);i>>8*(littleEndian?i:1-i)}function objectWriteUInt32(buf,value,offset,littleEndian){value<0&&(value=4294967295+value+1);for(var i=0,j=Math.min(buf.length-offset,4);i>>8*(littleEndian?i:3-i)&255}function checkIEEE754(buf,value,offset,ext,max,min){if(offset+ext>buf.length)throw new RangeError("Index out of range");if(offset<0)throw new RangeError("Index out of range")}function writeFloat(buf,value,offset,littleEndian,noAssert){return noAssert||checkIEEE754(buf,0,offset,4),ieee754.write(buf,value,offset,littleEndian,23,4),offset+4}function writeDouble(buf,value,offset,littleEndian,noAssert){return noAssert||checkIEEE754(buf,0,offset,8),ieee754.write(buf,value,offset,littleEndian,52,8),offset+8}Buffer.prototype.slice=function(start,end){var newBuf,len=this.length;if(start=~~start,end=void 0===end?len:~~end,start<0?(start+=len)<0&&(start=0):start>len&&(start=len),end<0?(end+=len)<0&&(end=0):end>len&&(end=len),end0&&(mul*=256);)val+=this[offset+--byteLength]*mul;return val},Buffer.prototype.readUInt8=function(offset,noAssert){return noAssert||checkOffset(offset,1,this.length),this[offset]},Buffer.prototype.readUInt16LE=function(offset,noAssert){return noAssert||checkOffset(offset,2,this.length),this[offset]|this[offset+1]<<8},Buffer.prototype.readUInt16BE=function(offset,noAssert){return noAssert||checkOffset(offset,2,this.length),this[offset]<<8|this[offset+1]},Buffer.prototype.readUInt32LE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),(this[offset]|this[offset+1]<<8|this[offset+2]<<16)+16777216*this[offset+3]},Buffer.prototype.readUInt32BE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),16777216*this[offset]+(this[offset+1]<<16|this[offset+2]<<8|this[offset+3])},Buffer.prototype.readIntLE=function(offset,byteLength,noAssert){offset|=0,byteLength|=0,noAssert||checkOffset(offset,byteLength,this.length);for(var val=this[offset],mul=1,i=0;++i=(mul*=128)&&(val-=Math.pow(2,8*byteLength)),val},Buffer.prototype.readIntBE=function(offset,byteLength,noAssert){offset|=0,byteLength|=0,noAssert||checkOffset(offset,byteLength,this.length);for(var i=byteLength,mul=1,val=this[offset+--i];i>0&&(mul*=256);)val+=this[offset+--i]*mul;return val>=(mul*=128)&&(val-=Math.pow(2,8*byteLength)),val},Buffer.prototype.readInt8=function(offset,noAssert){return noAssert||checkOffset(offset,1,this.length),128&this[offset]?-1*(255-this[offset]+1):this[offset]},Buffer.prototype.readInt16LE=function(offset,noAssert){noAssert||checkOffset(offset,2,this.length);var val=this[offset]|this[offset+1]<<8;return 32768&val?4294901760|val:val},Buffer.prototype.readInt16BE=function(offset,noAssert){noAssert||checkOffset(offset,2,this.length);var val=this[offset+1]|this[offset]<<8;return 32768&val?4294901760|val:val},Buffer.prototype.readInt32LE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),this[offset]|this[offset+1]<<8|this[offset+2]<<16|this[offset+3]<<24},Buffer.prototype.readInt32BE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),this[offset]<<24|this[offset+1]<<16|this[offset+2]<<8|this[offset+3]},Buffer.prototype.readFloatLE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),ieee754.read(this,offset,!0,23,4)},Buffer.prototype.readFloatBE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),ieee754.read(this,offset,!1,23,4)},Buffer.prototype.readDoubleLE=function(offset,noAssert){return noAssert||checkOffset(offset,8,this.length),ieee754.read(this,offset,!0,52,8)},Buffer.prototype.readDoubleBE=function(offset,noAssert){return noAssert||checkOffset(offset,8,this.length),ieee754.read(this,offset,!1,52,8)},Buffer.prototype.writeUIntLE=function(value,offset,byteLength,noAssert){(value=+value,offset|=0,byteLength|=0,noAssert)||checkInt(this,value,offset,byteLength,Math.pow(2,8*byteLength)-1,0);var mul=1,i=0;for(this[offset]=255&value;++i=0&&(mul*=256);)this[offset+i]=value/mul&255;return offset+byteLength},Buffer.prototype.writeUInt8=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,1,255,0),Buffer.TYPED_ARRAY_SUPPORT||(value=Math.floor(value)),this[offset]=255&value,offset+1},Buffer.prototype.writeUInt16LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=255&value,this[offset+1]=value>>>8):objectWriteUInt16(this,value,offset,!0),offset+2},Buffer.prototype.writeUInt16BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>8,this[offset+1]=255&value):objectWriteUInt16(this,value,offset,!1),offset+2},Buffer.prototype.writeUInt32LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset+3]=value>>>24,this[offset+2]=value>>>16,this[offset+1]=value>>>8,this[offset]=255&value):objectWriteUInt32(this,value,offset,!0),offset+4},Buffer.prototype.writeUInt32BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>24,this[offset+1]=value>>>16,this[offset+2]=value>>>8,this[offset+3]=255&value):objectWriteUInt32(this,value,offset,!1),offset+4},Buffer.prototype.writeIntLE=function(value,offset,byteLength,noAssert){if(value=+value,offset|=0,!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=0,mul=1,sub=0;for(this[offset]=255&value;++i>0)-sub&255;return offset+byteLength},Buffer.prototype.writeIntBE=function(value,offset,byteLength,noAssert){if(value=+value,offset|=0,!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=byteLength-1,mul=1,sub=0;for(this[offset+i]=255&value;--i>=0&&(mul*=256);)value<0&&0===sub&&0!==this[offset+i+1]&&(sub=1),this[offset+i]=(value/mul>>0)-sub&255;return offset+byteLength},Buffer.prototype.writeInt8=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,1,127,-128),Buffer.TYPED_ARRAY_SUPPORT||(value=Math.floor(value)),value<0&&(value=255+value+1),this[offset]=255&value,offset+1},Buffer.prototype.writeInt16LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=255&value,this[offset+1]=value>>>8):objectWriteUInt16(this,value,offset,!0),offset+2},Buffer.prototype.writeInt16BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>8,this[offset+1]=255&value):objectWriteUInt16(this,value,offset,!1),offset+2},Buffer.prototype.writeInt32LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,2147483647,-2147483648),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=255&value,this[offset+1]=value>>>8,this[offset+2]=value>>>16,this[offset+3]=value>>>24):objectWriteUInt32(this,value,offset,!0),offset+4},Buffer.prototype.writeInt32BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,2147483647,-2147483648),value<0&&(value=4294967295+value+1),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>24,this[offset+1]=value>>>16,this[offset+2]=value>>>8,this[offset+3]=255&value):objectWriteUInt32(this,value,offset,!1),offset+4},Buffer.prototype.writeFloatLE=function(value,offset,noAssert){return writeFloat(this,value,offset,!0,noAssert)},Buffer.prototype.writeFloatBE=function(value,offset,noAssert){return writeFloat(this,value,offset,!1,noAssert)},Buffer.prototype.writeDoubleLE=function(value,offset,noAssert){return writeDouble(this,value,offset,!0,noAssert)},Buffer.prototype.writeDoubleBE=function(value,offset,noAssert){return writeDouble(this,value,offset,!1,noAssert)},Buffer.prototype.copy=function(target,targetStart,start,end){if(start||(start=0),end||0===end||(end=this.length),targetStart>=target.length&&(targetStart=target.length),targetStart||(targetStart=0),end>0&&end=this.length)throw new RangeError("sourceStart out of bounds");if(end<0)throw new RangeError("sourceEnd out of bounds");end>this.length&&(end=this.length),target.length-targetStart=0;--i)target[i+targetStart]=this[i+start];else if(len<1e3||!Buffer.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,end=void 0===end?this.length:end>>>0,val||(val=0),"number"==typeof val)for(i=start;i55295&&codePoint<57344){if(!leadSurrogate){if(codePoint>56319){(units-=3)>-1&&bytes.push(239,191,189);continue}if(i+1===length){(units-=3)>-1&&bytes.push(239,191,189);continue}leadSurrogate=codePoint;continue}if(codePoint<56320){(units-=3)>-1&&bytes.push(239,191,189),leadSurrogate=codePoint;continue}codePoint=65536+(leadSurrogate-55296<<10|codePoint-56320)}else leadSurrogate&&(units-=3)>-1&&bytes.push(239,191,189);if(leadSurrogate=null,codePoint<128){if((units-=1)<0)break;bytes.push(codePoint)}else if(codePoint<2048){if((units-=2)<0)break;bytes.push(codePoint>>6|192,63&codePoint|128)}else if(codePoint<65536){if((units-=3)<0)break;bytes.push(codePoint>>12|224,codePoint>>6&63|128,63&codePoint|128)}else{if(!(codePoint<1114112))throw new Error("Invalid code point");if((units-=4)<0)break;bytes.push(codePoint>>18|240,codePoint>>12&63|128,codePoint>>6&63|128,63&codePoint|128)}}return bytes}function base64ToBytes(str){return base64.toByteArray(function(str){if((str=function(str){return str.trim?str.trim():str.replace(/^\s+|\s+$/g,"")}(str).replace(INVALID_BASE64_RE,"")).length<2)return"";for(;str.length%4!=0;)str+="=";return str}(str))}function blitBuffer(src,dst,offset,length){for(var i=0;i=dst.length||i>=src.length);++i)dst[i+offset]=src[i];return i}}).call(this,__webpack_require__(126))},function(module,exports,__webpack_require__){"use strict";(function(Buffer){ +var base64=__webpack_require__(126),ieee754=__webpack_require__(125),isArray=__webpack_require__(124);function kMaxLength(){return Buffer.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function createBuffer(that,length){if(kMaxLength()=kMaxLength())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kMaxLength().toString(16)+" bytes");return 0|length}function byteLength(string,encoding){if(Buffer.isBuffer(string))return string.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(string)||string instanceof ArrayBuffer))return string.byteLength;"string"!=typeof string&&(string=""+string);var len=string.length;if(0===len)return 0;for(var loweredCase=!1;;)switch(encoding){case"ascii":case"latin1":case"binary":return len;case"utf8":case"utf-8":case void 0:return utf8ToBytes(string).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*len;case"hex":return len>>>1;case"base64":return base64ToBytes(string).length;default:if(loweredCase)return utf8ToBytes(string).length;encoding=(""+encoding).toLowerCase(),loweredCase=!0}}function swap(b,n,m){var i=b[n];b[n]=b[m],b[m]=i}function bidirectionalIndexOf(buffer,val,byteOffset,encoding,dir){if(0===buffer.length)return-1;if("string"==typeof byteOffset?(encoding=byteOffset,byteOffset=0):byteOffset>2147483647?byteOffset=2147483647:byteOffset<-2147483648&&(byteOffset=-2147483648),byteOffset=+byteOffset,isNaN(byteOffset)&&(byteOffset=dir?0:buffer.length-1),byteOffset<0&&(byteOffset=buffer.length+byteOffset),byteOffset>=buffer.length){if(dir)return-1;byteOffset=buffer.length-1}else if(byteOffset<0){if(!dir)return-1;byteOffset=0}if("string"==typeof val&&(val=Buffer.from(val,encoding)),Buffer.isBuffer(val))return 0===val.length?-1:arrayIndexOf(buffer,val,byteOffset,encoding,dir);if("number"==typeof val)return val&=255,Buffer.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?dir?Uint8Array.prototype.indexOf.call(buffer,val,byteOffset):Uint8Array.prototype.lastIndexOf.call(buffer,val,byteOffset):arrayIndexOf(buffer,[val],byteOffset,encoding,dir);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(arr,val,byteOffset,encoding,dir){var i,indexSize=1,arrLength=arr.length,valLength=val.length;if(void 0!==encoding&&("ucs2"===(encoding=String(encoding).toLowerCase())||"ucs-2"===encoding||"utf16le"===encoding||"utf-16le"===encoding)){if(arr.length<2||val.length<2)return-1;indexSize=2,arrLength/=2,valLength/=2,byteOffset/=2}function read(buf,i){return 1===indexSize?buf[i]:buf.readUInt16BE(i*indexSize)}if(dir){var foundIndex=-1;for(i=byteOffset;iarrLength&&(byteOffset=arrLength-valLength),i=byteOffset;i>=0;i--){for(var found=!0,j=0;jremaining&&(length=remaining):length=remaining;var strLen=string.length;if(strLen%2!=0)throw new TypeError("Invalid hex string");length>strLen/2&&(length=strLen/2);for(var i=0;i>8,lo=c%256,byteArray.push(lo),byteArray.push(hi);return byteArray}(string,buf.length-offset),buf,offset,length)}function base64Slice(buf,start,end){return 0===start&&end===buf.length?base64.fromByteArray(buf):base64.fromByteArray(buf.slice(start,end))}function utf8Slice(buf,start,end){end=Math.min(buf.length,end);for(var res=[],i=start;i239?4:firstByte>223?3:firstByte>191?2:1;if(i+bytesPerSequence<=end)switch(bytesPerSequence){case 1:firstByte<128&&(codePoint=firstByte);break;case 2:128==(192&(secondByte=buf[i+1]))&&(tempCodePoint=(31&firstByte)<<6|63&secondByte)>127&&(codePoint=tempCodePoint);break;case 3:secondByte=buf[i+1],thirdByte=buf[i+2],128==(192&secondByte)&&128==(192&thirdByte)&&(tempCodePoint=(15&firstByte)<<12|(63&secondByte)<<6|63&thirdByte)>2047&&(tempCodePoint<55296||tempCodePoint>57343)&&(codePoint=tempCodePoint);break;case 4:secondByte=buf[i+1],thirdByte=buf[i+2],fourthByte=buf[i+3],128==(192&secondByte)&&128==(192&thirdByte)&&128==(192&fourthByte)&&(tempCodePoint=(15&firstByte)<<18|(63&secondByte)<<12|(63&thirdByte)<<6|63&fourthByte)>65535&&tempCodePoint<1114112&&(codePoint=tempCodePoint)}null===codePoint?(codePoint=65533,bytesPerSequence=1):codePoint>65535&&(codePoint-=65536,res.push(codePoint>>>10&1023|55296),codePoint=56320|1023&codePoint),res.push(codePoint),i+=bytesPerSequence}return function(codePoints){var len=codePoints.length;if(len<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,codePoints);var res="",i=0;for(;ithis.length)return"";if((void 0===end||end>this.length)&&(end=this.length),end<=0)return"";if((end>>>=0)<=(start>>>=0))return"";for(encoding||(encoding="utf8");;)switch(encoding){case"hex":return hexSlice(this,start,end);case"utf8":case"utf-8":return utf8Slice(this,start,end);case"ascii":return asciiSlice(this,start,end);case"latin1":case"binary":return latin1Slice(this,start,end);case"base64":return base64Slice(this,start,end);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,start,end);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(encoding+"").toLowerCase(),loweredCase=!0}}.apply(this,arguments)},Buffer.prototype.equals=function(b){if(!Buffer.isBuffer(b))throw new TypeError("Argument must be a Buffer");return this===b||0===Buffer.compare(this,b)},Buffer.prototype.inspect=function(){var str="",max=exports.INSPECT_MAX_BYTES;return this.length>0&&(str=this.toString("hex",0,max).match(/.{2}/g).join(" "),this.length>max&&(str+=" ... ")),""},Buffer.prototype.compare=function(target,start,end,thisStart,thisEnd){if(!Buffer.isBuffer(target))throw new TypeError("Argument must be a Buffer");if(void 0===start&&(start=0),void 0===end&&(end=target?target.length:0),void 0===thisStart&&(thisStart=0),void 0===thisEnd&&(thisEnd=this.length),start<0||end>target.length||thisStart<0||thisEnd>this.length)throw new RangeError("out of range index");if(thisStart>=thisEnd&&start>=end)return 0;if(thisStart>=thisEnd)return-1;if(start>=end)return 1;if(start>>>=0,end>>>=0,thisStart>>>=0,thisEnd>>>=0,this===target)return 0;for(var x=thisEnd-thisStart,y=end-start,len=Math.min(x,y),thisCopy=this.slice(thisStart,thisEnd),targetCopy=target.slice(start,end),i=0;iremaining)&&(length=remaining),string.length>0&&(length<0||offset<0)||offset>this.length)throw new RangeError("Attempt to write outside buffer bounds");encoding||(encoding="utf8");for(var loweredCase=!1;;)switch(encoding){case"hex":return hexWrite(this,string,offset,length);case"utf8":case"utf-8":return utf8Write(this,string,offset,length);case"ascii":return asciiWrite(this,string,offset,length);case"latin1":case"binary":return latin1Write(this,string,offset,length);case"base64":return base64Write(this,string,offset,length);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,string,offset,length);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(""+encoding).toLowerCase(),loweredCase=!0}},Buffer.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var MAX_ARGUMENTS_LENGTH=4096;function asciiSlice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;ilen)&&(end=len);for(var out="",i=start;ilength)throw new RangeError("Trying to access beyond buffer length")}function checkInt(buf,value,offset,ext,max,min){if(!Buffer.isBuffer(buf))throw new TypeError('"buffer" argument must be a Buffer instance');if(value>max||valuebuf.length)throw new RangeError("Index out of range")}function objectWriteUInt16(buf,value,offset,littleEndian){value<0&&(value=65535+value+1);for(var i=0,j=Math.min(buf.length-offset,2);i>>8*(littleEndian?i:1-i)}function objectWriteUInt32(buf,value,offset,littleEndian){value<0&&(value=4294967295+value+1);for(var i=0,j=Math.min(buf.length-offset,4);i>>8*(littleEndian?i:3-i)&255}function checkIEEE754(buf,value,offset,ext,max,min){if(offset+ext>buf.length)throw new RangeError("Index out of range");if(offset<0)throw new RangeError("Index out of range")}function writeFloat(buf,value,offset,littleEndian,noAssert){return noAssert||checkIEEE754(buf,0,offset,4),ieee754.write(buf,value,offset,littleEndian,23,4),offset+4}function writeDouble(buf,value,offset,littleEndian,noAssert){return noAssert||checkIEEE754(buf,0,offset,8),ieee754.write(buf,value,offset,littleEndian,52,8),offset+8}Buffer.prototype.slice=function(start,end){var newBuf,len=this.length;if(start=~~start,end=void 0===end?len:~~end,start<0?(start+=len)<0&&(start=0):start>len&&(start=len),end<0?(end+=len)<0&&(end=0):end>len&&(end=len),end0&&(mul*=256);)val+=this[offset+--byteLength]*mul;return val},Buffer.prototype.readUInt8=function(offset,noAssert){return noAssert||checkOffset(offset,1,this.length),this[offset]},Buffer.prototype.readUInt16LE=function(offset,noAssert){return noAssert||checkOffset(offset,2,this.length),this[offset]|this[offset+1]<<8},Buffer.prototype.readUInt16BE=function(offset,noAssert){return noAssert||checkOffset(offset,2,this.length),this[offset]<<8|this[offset+1]},Buffer.prototype.readUInt32LE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),(this[offset]|this[offset+1]<<8|this[offset+2]<<16)+16777216*this[offset+3]},Buffer.prototype.readUInt32BE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),16777216*this[offset]+(this[offset+1]<<16|this[offset+2]<<8|this[offset+3])},Buffer.prototype.readIntLE=function(offset,byteLength,noAssert){offset|=0,byteLength|=0,noAssert||checkOffset(offset,byteLength,this.length);for(var val=this[offset],mul=1,i=0;++i=(mul*=128)&&(val-=Math.pow(2,8*byteLength)),val},Buffer.prototype.readIntBE=function(offset,byteLength,noAssert){offset|=0,byteLength|=0,noAssert||checkOffset(offset,byteLength,this.length);for(var i=byteLength,mul=1,val=this[offset+--i];i>0&&(mul*=256);)val+=this[offset+--i]*mul;return val>=(mul*=128)&&(val-=Math.pow(2,8*byteLength)),val},Buffer.prototype.readInt8=function(offset,noAssert){return noAssert||checkOffset(offset,1,this.length),128&this[offset]?-1*(255-this[offset]+1):this[offset]},Buffer.prototype.readInt16LE=function(offset,noAssert){noAssert||checkOffset(offset,2,this.length);var val=this[offset]|this[offset+1]<<8;return 32768&val?4294901760|val:val},Buffer.prototype.readInt16BE=function(offset,noAssert){noAssert||checkOffset(offset,2,this.length);var val=this[offset+1]|this[offset]<<8;return 32768&val?4294901760|val:val},Buffer.prototype.readInt32LE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),this[offset]|this[offset+1]<<8|this[offset+2]<<16|this[offset+3]<<24},Buffer.prototype.readInt32BE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),this[offset]<<24|this[offset+1]<<16|this[offset+2]<<8|this[offset+3]},Buffer.prototype.readFloatLE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),ieee754.read(this,offset,!0,23,4)},Buffer.prototype.readFloatBE=function(offset,noAssert){return noAssert||checkOffset(offset,4,this.length),ieee754.read(this,offset,!1,23,4)},Buffer.prototype.readDoubleLE=function(offset,noAssert){return noAssert||checkOffset(offset,8,this.length),ieee754.read(this,offset,!0,52,8)},Buffer.prototype.readDoubleBE=function(offset,noAssert){return noAssert||checkOffset(offset,8,this.length),ieee754.read(this,offset,!1,52,8)},Buffer.prototype.writeUIntLE=function(value,offset,byteLength,noAssert){(value=+value,offset|=0,byteLength|=0,noAssert)||checkInt(this,value,offset,byteLength,Math.pow(2,8*byteLength)-1,0);var mul=1,i=0;for(this[offset]=255&value;++i=0&&(mul*=256);)this[offset+i]=value/mul&255;return offset+byteLength},Buffer.prototype.writeUInt8=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,1,255,0),Buffer.TYPED_ARRAY_SUPPORT||(value=Math.floor(value)),this[offset]=255&value,offset+1},Buffer.prototype.writeUInt16LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=255&value,this[offset+1]=value>>>8):objectWriteUInt16(this,value,offset,!0),offset+2},Buffer.prototype.writeUInt16BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>8,this[offset+1]=255&value):objectWriteUInt16(this,value,offset,!1),offset+2},Buffer.prototype.writeUInt32LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset+3]=value>>>24,this[offset+2]=value>>>16,this[offset+1]=value>>>8,this[offset]=255&value):objectWriteUInt32(this,value,offset,!0),offset+4},Buffer.prototype.writeUInt32BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>24,this[offset+1]=value>>>16,this[offset+2]=value>>>8,this[offset+3]=255&value):objectWriteUInt32(this,value,offset,!1),offset+4},Buffer.prototype.writeIntLE=function(value,offset,byteLength,noAssert){if(value=+value,offset|=0,!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=0,mul=1,sub=0;for(this[offset]=255&value;++i>0)-sub&255;return offset+byteLength},Buffer.prototype.writeIntBE=function(value,offset,byteLength,noAssert){if(value=+value,offset|=0,!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=byteLength-1,mul=1,sub=0;for(this[offset+i]=255&value;--i>=0&&(mul*=256);)value<0&&0===sub&&0!==this[offset+i+1]&&(sub=1),this[offset+i]=(value/mul>>0)-sub&255;return offset+byteLength},Buffer.prototype.writeInt8=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,1,127,-128),Buffer.TYPED_ARRAY_SUPPORT||(value=Math.floor(value)),value<0&&(value=255+value+1),this[offset]=255&value,offset+1},Buffer.prototype.writeInt16LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=255&value,this[offset+1]=value>>>8):objectWriteUInt16(this,value,offset,!0),offset+2},Buffer.prototype.writeInt16BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>8,this[offset+1]=255&value):objectWriteUInt16(this,value,offset,!1),offset+2},Buffer.prototype.writeInt32LE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,2147483647,-2147483648),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=255&value,this[offset+1]=value>>>8,this[offset+2]=value>>>16,this[offset+3]=value>>>24):objectWriteUInt32(this,value,offset,!0),offset+4},Buffer.prototype.writeInt32BE=function(value,offset,noAssert){return value=+value,offset|=0,noAssert||checkInt(this,value,offset,4,2147483647,-2147483648),value<0&&(value=4294967295+value+1),Buffer.TYPED_ARRAY_SUPPORT?(this[offset]=value>>>24,this[offset+1]=value>>>16,this[offset+2]=value>>>8,this[offset+3]=255&value):objectWriteUInt32(this,value,offset,!1),offset+4},Buffer.prototype.writeFloatLE=function(value,offset,noAssert){return writeFloat(this,value,offset,!0,noAssert)},Buffer.prototype.writeFloatBE=function(value,offset,noAssert){return writeFloat(this,value,offset,!1,noAssert)},Buffer.prototype.writeDoubleLE=function(value,offset,noAssert){return writeDouble(this,value,offset,!0,noAssert)},Buffer.prototype.writeDoubleBE=function(value,offset,noAssert){return writeDouble(this,value,offset,!1,noAssert)},Buffer.prototype.copy=function(target,targetStart,start,end){if(start||(start=0),end||0===end||(end=this.length),targetStart>=target.length&&(targetStart=target.length),targetStart||(targetStart=0),end>0&&end=this.length)throw new RangeError("sourceStart out of bounds");if(end<0)throw new RangeError("sourceEnd out of bounds");end>this.length&&(end=this.length),target.length-targetStart=0;--i)target[i+targetStart]=this[i+start];else if(len<1e3||!Buffer.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,end=void 0===end?this.length:end>>>0,val||(val=0),"number"==typeof val)for(i=start;i55295&&codePoint<57344){if(!leadSurrogate){if(codePoint>56319){(units-=3)>-1&&bytes.push(239,191,189);continue}if(i+1===length){(units-=3)>-1&&bytes.push(239,191,189);continue}leadSurrogate=codePoint;continue}if(codePoint<56320){(units-=3)>-1&&bytes.push(239,191,189),leadSurrogate=codePoint;continue}codePoint=65536+(leadSurrogate-55296<<10|codePoint-56320)}else leadSurrogate&&(units-=3)>-1&&bytes.push(239,191,189);if(leadSurrogate=null,codePoint<128){if((units-=1)<0)break;bytes.push(codePoint)}else if(codePoint<2048){if((units-=2)<0)break;bytes.push(codePoint>>6|192,63&codePoint|128)}else if(codePoint<65536){if((units-=3)<0)break;bytes.push(codePoint>>12|224,codePoint>>6&63|128,63&codePoint|128)}else{if(!(codePoint<1114112))throw new Error("Invalid code point");if((units-=4)<0)break;bytes.push(codePoint>>18|240,codePoint>>12&63|128,codePoint>>6&63|128,63&codePoint|128)}}return bytes}function base64ToBytes(str){return base64.toByteArray(function(str){if((str=function(str){return str.trim?str.trim():str.replace(/^\s+|\s+$/g,"")}(str).replace(INVALID_BASE64_RE,"")).length<2)return"";for(;str.length%4!=0;)str+="=";return str}(str))}function blitBuffer(src,dst,offset,length){for(var i=0;i=dst.length||i>=src.length);++i)dst[i+offset]=src[i];return i}}).call(this,__webpack_require__(127))},function(module,exports,__webpack_require__){"use strict";(function(Buffer){ /*! * Copyright (C) 2018 Glayzzle (BSD3 License) * @authors https://github.com/glayzzle/php-parser/graphs/contributors * @url http://glayzzle.com */ -var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},lexer=__webpack_require__(122),parser=__webpack_require__(112),tokens=__webpack_require__(96),AST=__webpack_require__(95);function combine(src,to){for(var keys=Object.keys(src),i=keys.length;i--;){var k=keys[i],val=src[k];null===val?delete to[k]:"function"==typeof val?to[k]=val.bind(to):Array.isArray(val)?to[k]=Array.isArray(to[k])?to[k].concat(val):val:"object"===(void 0===val?"undefined":_typeof(val))?to[k]="object"===_typeof(to[k])?combine(val,to[k]):val:to[k]=val}return to}var engine=function(options){if("function"==typeof this)return new this(options);this.tokens=tokens,this.lexer=new lexer(this),this.ast=new AST,this.parser=new parser(this.lexer,this.ast),options&&"object"===(void 0===options?"undefined":_typeof(options))&&(options.parser&&!1===options.parser.php7&&(options.lexer||(options.lexer={}),options.lexer.php7=!1),combine(options,this))},getStringBuffer=function(buffer){return Buffer.isBuffer(buffer)?buffer.toString():buffer};engine.create=function(options){return new engine(options)},engine.parseEval=function(buffer,options){return new engine(options).parseEval(buffer)},engine.prototype.parseEval=function(buffer){return this.lexer.mode_eval=!0,this.lexer.all_tokens=!1,buffer=getStringBuffer(buffer),this.parser.parse(buffer,"eval")},engine.parseCode=function(buffer,filename,options){return"object"!==(void 0===filename?"undefined":_typeof(filename))||options||(options=filename,filename="unknown"),new engine(options).parseCode(buffer,filename)},engine.prototype.parseCode=function(buffer,filename){return this.lexer.mode_eval=!1,this.lexer.all_tokens=!1,buffer=getStringBuffer(buffer),this.parser.parse(buffer,filename)},engine.tokenGetAll=function(buffer,options){return new engine(options).tokenGetAll(buffer)},engine.prototype.tokenGetAll=function(buffer){this.lexer.mode_eval=!1,this.lexer.all_tokens=!0,buffer=getStringBuffer(buffer);var EOF=this.lexer.EOF,names=this.tokens.values;this.lexer.setInput(buffer);for(var token=this.lexer.lex()||EOF,result=[];token!=EOF;){var entry=this.lexer.yytext;names.hasOwnProperty(token)&&(entry=[names[token],entry,this.lexer.yylloc.first_line]),result.push(entry),token=this.lexer.lex()||EOF}return result},module.exports=engine,module.exports.tokens=tokens,module.exports.lexer=lexer,module.exports.AST=AST,module.exports.parser=parser,module.exports.combine=combine,module.exports.default=engine}).call(this,__webpack_require__(127).Buffer)}]).default}); \ No newline at end of file +var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},lexer=__webpack_require__(123),parser=__webpack_require__(113),tokens=__webpack_require__(97),AST=__webpack_require__(96);function combine(src,to){for(var keys=Object.keys(src),i=keys.length;i--;){var k=keys[i],val=src[k];null===val?delete to[k]:"function"==typeof val?to[k]=val.bind(to):Array.isArray(val)?to[k]=Array.isArray(to[k])?to[k].concat(val):val:"object"===(void 0===val?"undefined":_typeof(val))?to[k]="object"===_typeof(to[k])?combine(val,to[k]):val:to[k]=val}return to}var engine=function(options){if("function"==typeof this)return new this(options);this.tokens=tokens,this.lexer=new lexer(this),this.ast=new AST,this.parser=new parser(this.lexer,this.ast),options&&"object"===(void 0===options?"undefined":_typeof(options))&&(options.parser&&!1===options.parser.php7&&(options.lexer||(options.lexer={}),options.lexer.php7=!1),combine(options,this))},getStringBuffer=function(buffer){return Buffer.isBuffer(buffer)?buffer.toString():buffer};engine.create=function(options){return new engine(options)},engine.parseEval=function(buffer,options){return new engine(options).parseEval(buffer)},engine.prototype.parseEval=function(buffer){return this.lexer.mode_eval=!0,this.lexer.all_tokens=!1,buffer=getStringBuffer(buffer),this.parser.parse(buffer,"eval")},engine.parseCode=function(buffer,filename,options){return"object"!==(void 0===filename?"undefined":_typeof(filename))||options||(options=filename,filename="unknown"),new engine(options).parseCode(buffer,filename)},engine.prototype.parseCode=function(buffer,filename){return this.lexer.mode_eval=!1,this.lexer.all_tokens=!1,buffer=getStringBuffer(buffer),this.parser.parse(buffer,filename)},engine.tokenGetAll=function(buffer,options){return new engine(options).tokenGetAll(buffer)},engine.prototype.tokenGetAll=function(buffer){this.lexer.mode_eval=!1,this.lexer.all_tokens=!0,buffer=getStringBuffer(buffer);var EOF=this.lexer.EOF,names=this.tokens.values;this.lexer.setInput(buffer);for(var token=this.lexer.lex()||EOF,result=[];token!=EOF;){var entry=this.lexer.yytext;names.hasOwnProperty(token)&&(entry=[names[token],entry,this.lexer.yylloc.first_line]),result.push(entry),token=this.lexer.lex()||EOF}return result},module.exports=engine,module.exports.tokens=tokens,module.exports.lexer=lexer,module.exports.AST=AST,module.exports.parser=parser,module.exports.combine=combine,module.exports.default=engine}).call(this,__webpack_require__(128).Buffer)}]).default}); \ No newline at end of file diff --git a/docs/AST.html b/docs/AST.html index 1b4e6fbad..2d12bf052 100644 --- a/docs/AST.html +++ b/docs/AST.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Array.html b/docs/Array.html index 667d08b1e..b8993d72d 100644 --- a/docs/Array.html +++ b/docs/Array.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Assign.html b/docs/Assign.html index 765a6e182..c062894f9 100644 --- a/docs/Assign.html +++ b/docs/Assign.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Bin.html b/docs/Bin.html index 2574e0658..78d43f262 100644 --- a/docs/Bin.html +++ b/docs/Bin.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Block.html b/docs/Block.html index 9ab76dc39..9338b1873 100644 --- a/docs/Block.html +++ b/docs/Block.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Boolean.html b/docs/Boolean.html index ffd84c8b7..27a81d414 100644 --- a/docs/Boolean.html +++ b/docs/Boolean.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Break.html b/docs/Break.html index 7573d83de..3167ea6a6 100644 --- a/docs/Break.html +++ b/docs/Break.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Call.html b/docs/Call.html index bdd1a8a78..416bc235f 100644 --- a/docs/Call.html +++ b/docs/Call.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Case.html b/docs/Case.html index 539290d17..5ce847048 100644 --- a/docs/Case.html +++ b/docs/Case.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Cast.html b/docs/Cast.html index eeff5b1df..ed5531ff4 100644 --- a/docs/Cast.html +++ b/docs/Cast.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Catch.html b/docs/Catch.html index 667a48ede..1c777a473 100644 --- a/docs/Catch.html +++ b/docs/Catch.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Class.html b/docs/Class.html index 0fc91e517..0dd08677c 100644 --- a/docs/Class.html +++ b/docs/Class.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ClassConstant.html b/docs/ClassConstant.html index 472a93a81..e441978fd 100644 --- a/docs/ClassConstant.html +++ b/docs/ClassConstant.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ClassReference.html b/docs/ClassReference.html index 4cf70eff0..36a25241b 100644 --- a/docs/ClassReference.html +++ b/docs/ClassReference.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Clone.html b/docs/Clone.html index 36fef0ea7..07f31cc3b 100644 --- a/docs/Clone.html +++ b/docs/Clone.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Closure.html b/docs/Closure.html index a5f49a944..29e07627c 100644 --- a/docs/Closure.html +++ b/docs/Closure.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Comment.html b/docs/Comment.html index 6b7b26c27..b9a5a9353 100644 --- a/docs/Comment.html +++ b/docs/Comment.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/CommentBlock.html b/docs/CommentBlock.html index ed72bd8ee..adf2ff1e3 100644 --- a/docs/CommentBlock.html +++ b/docs/CommentBlock.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/CommentLine.html b/docs/CommentLine.html index 18a232c5b..3be7719fe 100644 --- a/docs/CommentLine.html +++ b/docs/CommentLine.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ConstRef.html b/docs/ConstRef.html index 642308913..7ee36795b 100644 --- a/docs/ConstRef.html +++ b/docs/ConstRef.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Constant.html b/docs/Constant.html index f3027270a..c16cae5fd 100644 --- a/docs/Constant.html +++ b/docs/Constant.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Continue.html b/docs/Continue.html index b8dda76a3..91cc18952 100644 --- a/docs/Continue.html +++ b/docs/Continue.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Declaration.html b/docs/Declaration.html index b698da535..cb3befa7c 100644 --- a/docs/Declaration.html +++ b/docs/Declaration.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Declare.html b/docs/Declare.html index 71ae02bb4..ce09015cf 100644 --- a/docs/Declare.html +++ b/docs/Declare.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Do.html b/docs/Do.html index 8279dc228..2fc1c01c0 100644 --- a/docs/Do.html +++ b/docs/Do.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Echo.html b/docs/Echo.html index 46cea461c..1b0191924 100644 --- a/docs/Echo.html +++ b/docs/Echo.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Empty.html b/docs/Empty.html index 12f98efc5..5d57bb322 100644 --- a/docs/Empty.html +++ b/docs/Empty.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Encapsed.html b/docs/Encapsed.html index 6d98a333c..1b68fb1c7 100644 --- a/docs/Encapsed.html +++ b/docs/Encapsed.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Entry.html b/docs/Entry.html index 503dd7b74..41dd76153 100644 --- a/docs/Entry.html +++ b/docs/Entry.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Error.html b/docs/Error.html index 82af5e702..71f6c261f 100644 --- a/docs/Error.html +++ b/docs/Error.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Eval.html b/docs/Eval.html index 2eed43a48..24c187333 100644 --- a/docs/Eval.html +++ b/docs/Eval.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Exit.html b/docs/Exit.html index 49922dafd..4d8ea797a 100644 --- a/docs/Exit.html +++ b/docs/Exit.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Expression.html b/docs/Expression.html index 07038fa68..90ba8a366 100644 --- a/docs/Expression.html +++ b/docs/Expression.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ExpressionStatement.html b/docs/ExpressionStatement.html index bff16f200..d8e9364a5 100644 --- a/docs/ExpressionStatement.html +++ b/docs/ExpressionStatement.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/For.html b/docs/For.html index 42fe565db..8ef718cc8 100644 --- a/docs/For.html +++ b/docs/For.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Foreach.html b/docs/Foreach.html index 4356accbb..31e6237d5 100644 --- a/docs/Foreach.html +++ b/docs/Foreach.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Function.html b/docs/Function.html index 9b582a994..ddf96ceb4 100644 --- a/docs/Function.html +++ b/docs/Function.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Global_.html b/docs/Global_.html index 9c940af1d..ccaab19c7 100644 --- a/docs/Global_.html +++ b/docs/Global_.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Goto.html b/docs/Goto.html index 538f6af1b..de63c02a7 100644 --- a/docs/Goto.html +++ b/docs/Goto.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Halt.html b/docs/Halt.html index 285bbef8b..0f9498e8a 100644 --- a/docs/Halt.html +++ b/docs/Halt.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Identifier.html b/docs/Identifier.html index 1286576cb..c9a289834 100644 --- a/docs/Identifier.html +++ b/docs/Identifier.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/If.html b/docs/If.html index 25852446d..16fa8e603 100644 --- a/docs/If.html +++ b/docs/If.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Include.html b/docs/Include.html index 0adaef0cd..1e0585410 100644 --- a/docs/Include.html +++ b/docs/Include.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Inline.html b/docs/Inline.html index b89a7ac1b..eaf1f6a4f 100644 --- a/docs/Inline.html +++ b/docs/Inline.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Interface.html b/docs/Interface.html index 7d02bdf33..2329f75eb 100644 --- a/docs/Interface.html +++ b/docs/Interface.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Isset.html b/docs/Isset.html index 7584281c1..45af3e528 100644 --- a/docs/Isset.html +++ b/docs/Isset.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Label.html b/docs/Label.html index 986b5f1f1..0afce60c5 100644 --- a/docs/Label.html +++ b/docs/Label.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/List.html b/docs/List.html index 04572d981..6c1a4924f 100644 --- a/docs/List.html +++ b/docs/List.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Literal.html b/docs/Literal.html index 4f463725a..13e1af87b 100644 --- a/docs/Literal.html +++ b/docs/Literal.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Location.html b/docs/Location.html index c6351eb23..35207c539 100644 --- a/docs/Location.html +++ b/docs/Location.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Lookup.html b/docs/Lookup.html index c04177f1a..9842753bb 100644 --- a/docs/Lookup.html +++ b/docs/Lookup.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Magic.html b/docs/Magic.html index 078e8b534..43e514060 100644 --- a/docs/Magic.html +++ b/docs/Magic.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Method.html b/docs/Method.html index 508131e0b..393dd4c81 100644 --- a/docs/Method.html +++ b/docs/Method.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Namespace.html b/docs/Namespace.html index 7e5c42d60..71783fa03 100644 --- a/docs/Namespace.html +++ b/docs/Namespace.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/New.html b/docs/New.html index 6bf177095..6aafee858 100644 --- a/docs/New.html +++ b/docs/New.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Node.html b/docs/Node.html index 9dba7f879..1e5b4ad0c 100644 --- a/docs/Node.html +++ b/docs/Node.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/NowDoc.html b/docs/NowDoc.html index 438592143..c658ff87b 100644 --- a/docs/NowDoc.html +++ b/docs/NowDoc.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Number.html b/docs/Number.html index df370288c..33300ba9f 100644 --- a/docs/Number.html +++ b/docs/Number.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/OffsetLookup.html b/docs/OffsetLookup.html index a3b77daf2..c423afa0d 100644 --- a/docs/OffsetLookup.html +++ b/docs/OffsetLookup.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Operation.html b/docs/Operation.html index 94d509b7b..6c3efe134 100644 --- a/docs/Operation.html +++ b/docs/Operation.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Parameter.html b/docs/Parameter.html index 356682c1d..987b40c34 100644 --- a/docs/Parameter.html +++ b/docs/Parameter.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ParentReference.html b/docs/ParentReference.html index 34d7609ba..a4130852e 100644 --- a/docs/ParentReference.html +++ b/docs/ParentReference.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Position.html b/docs/Position.html index 3e86848bd..a46ca6ecd 100644 --- a/docs/Position.html +++ b/docs/Position.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Post.html b/docs/Post.html index c889f4041..8630bfc35 100644 --- a/docs/Post.html +++ b/docs/Post.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Pre.html b/docs/Pre.html index 4675847f6..10c5fc2bb 100644 --- a/docs/Pre.html +++ b/docs/Pre.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Print.html b/docs/Print.html index 15bf4221c..e48d10658 100644 --- a/docs/Print.html +++ b/docs/Print.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Program.html b/docs/Program.html index 4b696f814..5de409311 100644 --- a/docs/Program.html +++ b/docs/Program.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Property.html b/docs/Property.html index 58060bbe4..62fc87798 100644 --- a/docs/Property.html +++ b/docs/Property.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/PropertyLookup.html b/docs/PropertyLookup.html index 8c73f3a65..73aab982b 100644 --- a/docs/PropertyLookup.html +++ b/docs/PropertyLookup.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Reference.html b/docs/Reference.html index 02ec9f619..062c59f2b 100644 --- a/docs/Reference.html +++ b/docs/Reference.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/RetIf.html b/docs/RetIf.html index d2efb9daf..a7c104a37 100644 --- a/docs/RetIf.html +++ b/docs/RetIf.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Return.html b/docs/Return.html index 5f6d45fc3..13e3f52d3 100644 --- a/docs/Return.html +++ b/docs/Return.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/SelfReference.html b/docs/SelfReference.html index 120516e6d..5530a1ff8 100644 --- a/docs/SelfReference.html +++ b/docs/SelfReference.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Silent.html b/docs/Silent.html index d30ee02ca..957a032b3 100644 --- a/docs/Silent.html +++ b/docs/Silent.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Statement.html b/docs/Statement.html index 238f1b451..a06905f76 100644 --- a/docs/Statement.html +++ b/docs/Statement.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Static.html b/docs/Static.html index 9bd9284bd..029b2ecc8 100644 --- a/docs/Static.html +++ b/docs/Static.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/StaticLookup.html b/docs/StaticLookup.html index 5fe69b9cf..618b8e0f2 100644 --- a/docs/StaticLookup.html +++ b/docs/StaticLookup.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/StaticReference.html b/docs/StaticReference.html index 0e354e7c9..e39c2ebc9 100644 --- a/docs/StaticReference.html +++ b/docs/StaticReference.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/String.html b/docs/String.html index 95fd3252d..716f0c594 100644 --- a/docs/String.html +++ b/docs/String.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Switch.html b/docs/Switch.html index 2e5ed1f66..5e47ebbc3 100644 --- a/docs/Switch.html +++ b/docs/Switch.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Sys.html b/docs/Sys.html index 85fee263e..74ebd74e5 100644 --- a/docs/Sys.html +++ b/docs/Sys.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Throw.html b/docs/Throw.html index 16a6ce280..93c4e096f 100644 --- a/docs/Throw.html +++ b/docs/Throw.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Trait.html b/docs/Trait.html index 14480edd8..4a49a44f4 100644 --- a/docs/Trait.html +++ b/docs/Trait.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/TraitAlias.html b/docs/TraitAlias.html index bde4ad704..086a7f738 100644 --- a/docs/TraitAlias.html +++ b/docs/TraitAlias.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/TraitPrecedence.html b/docs/TraitPrecedence.html index e28f748ef..69787cb93 100644 --- a/docs/TraitPrecedence.html +++ b/docs/TraitPrecedence.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/TraitUse.html b/docs/TraitUse.html index 970b064e9..ea74b80ff 100644 --- a/docs/TraitUse.html +++ b/docs/TraitUse.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Try.html b/docs/Try.html index 9d8bc4022..e72640655 100644 --- a/docs/Try.html +++ b/docs/Try.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/TypeReference.html b/docs/TypeReference.html new file mode 100644 index 000000000..6f164e278 --- /dev/null +++ b/docs/TypeReference.html @@ -0,0 +1,642 @@ + + + + + + + + + TypeReference - Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ TypeReference +

+ + + + +
+
+ +

+ + TypeReference + +

+ + + +
+ +
+
+ + + + + + + + + + + + +

+ new TypeReference() +

+
+ + + + + +
+

Defines a class reference node

+
+ + + + + + + + + + +
Properties:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
name + + + + string + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ +
+ + + + + + + +
+ + + + + + + + + + + + + + + +
+ + +

Extends

+ + + + + + + + + + + + + + + + + + + + +

Methods

+ + + + + + + + + + + + + +

+ includeToken(parser) +

+
+ + + + + +
+

Includes current token position of the parser

+
+ + + + + + + +
Parameters:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
parser + + + + * + + + + + + + + + +
+ + + + + +
+ + + + + + +
Inherited From:
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ +
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+ setTrailingComments(docs) +

+
+ + + + + +
+

Attach comments to current node

+
+ + + + + + + +
Parameters:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
docs + + + + * + + + + + + + + + +
+ + + + + +
+ + + + + + +
Inherited From:
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Source:
+
+ +
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + +
+
+ + + + +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/docs/Unary.html b/docs/Unary.html index 161a0cf23..17e6989cd 100644 --- a/docs/Unary.html +++ b/docs/Unary.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Unset.html b/docs/Unset.html index 276ed995b..2dfb54cc4 100644 --- a/docs/Unset.html +++ b/docs/Unset.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/UseGroup.html b/docs/UseGroup.html index e6e03f196..bb3c055a2 100644 --- a/docs/UseGroup.html +++ b/docs/UseGroup.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/UseItem.html b/docs/UseItem.html index 480cea4e5..c382292f9 100644 --- a/docs/UseItem.html +++ b/docs/UseItem.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Variable.html b/docs/Variable.html index 45440d0aa..dbddc7440 100644 --- a/docs/Variable.html +++ b/docs/Variable.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/While.html b/docs/While.html index c7abb2b4a..797c9fac7 100644 --- a/docs/While.html +++ b/docs/While.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/Yield.html b/docs/Yield.html index 2ea70e671..58cf28ac8 100644 --- a/docs/Yield.html +++ b/docs/Yield.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/YieldFrom.html b/docs/YieldFrom.html index 9ae90889f..1dc2c9e2d 100644 --- a/docs/YieldFrom.html +++ b/docs/YieldFrom.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast.js.html b/docs/ast.js.html index fe4c28ffd..8e1c709b7 100644 --- a/docs/ast.js.html +++ b/docs/ast.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

@@ -526,6 +526,7 @@

require("./ast/traitprecedence"), require("./ast/traituse"), require("./ast/try"), + require("./ast/typereference"), require("./ast/unary"), require("./ast/unset"), require("./ast/usegroup"), diff --git a/docs/ast_array.js.html b/docs/ast_array.js.html index f48ade739..34489cf67 100644 --- a/docs/ast_array.js.html +++ b/docs/ast_array.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_assign.js.html b/docs/ast_assign.js.html index 427fbd585..1f62f2a5c 100644 --- a/docs/ast_assign.js.html +++ b/docs/ast_assign.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_bin.js.html b/docs/ast_bin.js.html index d1261d615..a27e3e37a 100644 --- a/docs/ast_bin.js.html +++ b/docs/ast_bin.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_block.js.html b/docs/ast_block.js.html index 123e92ed8..93abf07d1 100644 --- a/docs/ast_block.js.html +++ b/docs/ast_block.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_boolean.js.html b/docs/ast_boolean.js.html index 14c46d317..6c095c8d0 100644 --- a/docs/ast_boolean.js.html +++ b/docs/ast_boolean.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_break.js.html b/docs/ast_break.js.html index 922692b07..80be2d1c6 100644 --- a/docs/ast_break.js.html +++ b/docs/ast_break.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_call.js.html b/docs/ast_call.js.html index b4c72ee7c..d18546d5a 100644 --- a/docs/ast_call.js.html +++ b/docs/ast_call.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_case.js.html b/docs/ast_case.js.html index 82c6441fe..6074d4bae 100644 --- a/docs/ast_case.js.html +++ b/docs/ast_case.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_cast.js.html b/docs/ast_cast.js.html index 9782aefe9..14e900253 100644 --- a/docs/ast_cast.js.html +++ b/docs/ast_cast.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_catch.js.html b/docs/ast_catch.js.html index d0efa1066..f9cb02b0f 100644 --- a/docs/ast_catch.js.html +++ b/docs/ast_catch.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_class.js.html b/docs/ast_class.js.html index 2727d27f9..21d98a748 100644 --- a/docs/ast_class.js.html +++ b/docs/ast_class.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_classconstant.js.html b/docs/ast_classconstant.js.html index 221bc40dc..5791d81c6 100644 --- a/docs/ast_classconstant.js.html +++ b/docs/ast_classconstant.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_classreference.js.html b/docs/ast_classreference.js.html index d1e8eadf3..b27cce46f 100644 --- a/docs/ast_classreference.js.html +++ b/docs/ast_classreference.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_clone.js.html b/docs/ast_clone.js.html index 8da8f1ee5..00c4d90ab 100644 --- a/docs/ast_clone.js.html +++ b/docs/ast_clone.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_closure.js.html b/docs/ast_closure.js.html index 769d5609e..2842d153a 100644 --- a/docs/ast_closure.js.html +++ b/docs/ast_closure.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_comment.js.html b/docs/ast_comment.js.html index 6f32eb53b..a7889eb2b 100644 --- a/docs/ast_comment.js.html +++ b/docs/ast_comment.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_commentblock.js.html b/docs/ast_commentblock.js.html index 8cda44013..99c035077 100644 --- a/docs/ast_commentblock.js.html +++ b/docs/ast_commentblock.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_commentline.js.html b/docs/ast_commentline.js.html index fa6207d0a..1d552feeb 100644 --- a/docs/ast_commentline.js.html +++ b/docs/ast_commentline.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_constant.js.html b/docs/ast_constant.js.html index 4638a3348..682ece19b 100644 --- a/docs/ast_constant.js.html +++ b/docs/ast_constant.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_constref.js.html b/docs/ast_constref.js.html index 97fdf9bd2..7ee584444 100644 --- a/docs/ast_constref.js.html +++ b/docs/ast_constref.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_continue.js.html b/docs/ast_continue.js.html index 7506584a4..3ea305b85 100644 --- a/docs/ast_continue.js.html +++ b/docs/ast_continue.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_declaration.js.html b/docs/ast_declaration.js.html index eef72b7ff..59b38b8a0 100644 --- a/docs/ast_declaration.js.html +++ b/docs/ast_declaration.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_declare.js.html b/docs/ast_declare.js.html index 0d6fc9191..ae76bf690 100644 --- a/docs/ast_declare.js.html +++ b/docs/ast_declare.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_do.js.html b/docs/ast_do.js.html index 69ffbb219..48b23c027 100644 --- a/docs/ast_do.js.html +++ b/docs/ast_do.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_echo.js.html b/docs/ast_echo.js.html index 9a346d13d..0f62e0d20 100644 --- a/docs/ast_echo.js.html +++ b/docs/ast_echo.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_empty.js.html b/docs/ast_empty.js.html index 925a60be5..6e6f4dae1 100644 --- a/docs/ast_empty.js.html +++ b/docs/ast_empty.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_encapsed.js.html b/docs/ast_encapsed.js.html index 1a60544b6..895f39e7f 100644 --- a/docs/ast_encapsed.js.html +++ b/docs/ast_encapsed.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_entry.js.html b/docs/ast_entry.js.html index 7134cec2f..5283481e3 100644 --- a/docs/ast_entry.js.html +++ b/docs/ast_entry.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_error.js.html b/docs/ast_error.js.html index ae708bb66..9a11c8a6e 100644 --- a/docs/ast_error.js.html +++ b/docs/ast_error.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_eval.js.html b/docs/ast_eval.js.html index dc1cbec0e..c601d9056 100644 --- a/docs/ast_eval.js.html +++ b/docs/ast_eval.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_exit.js.html b/docs/ast_exit.js.html index d590b549d..c6947a5b0 100644 --- a/docs/ast_exit.js.html +++ b/docs/ast_exit.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_expression.js.html b/docs/ast_expression.js.html index 2f097a473..857fed880 100644 --- a/docs/ast_expression.js.html +++ b/docs/ast_expression.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_expressionstatement.js.html b/docs/ast_expressionstatement.js.html index d5c25127d..681884b87 100644 --- a/docs/ast_expressionstatement.js.html +++ b/docs/ast_expressionstatement.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_for.js.html b/docs/ast_for.js.html index 2a8f7bd78..df902c118 100644 --- a/docs/ast_for.js.html +++ b/docs/ast_for.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_foreach.js.html b/docs/ast_foreach.js.html index 2af26aab9..aa761b74f 100644 --- a/docs/ast_foreach.js.html +++ b/docs/ast_foreach.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_function.js.html b/docs/ast_function.js.html index 77b276172..c1ac70005 100644 --- a/docs/ast_function.js.html +++ b/docs/ast_function.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_global.js.html b/docs/ast_global.js.html index c425f39f1..abcfc6be7 100644 --- a/docs/ast_global.js.html +++ b/docs/ast_global.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_goto.js.html b/docs/ast_goto.js.html index 9ea8cba77..1898af90b 100644 --- a/docs/ast_goto.js.html +++ b/docs/ast_goto.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_halt.js.html b/docs/ast_halt.js.html index 2635e267b..6eeb36e6f 100644 --- a/docs/ast_halt.js.html +++ b/docs/ast_halt.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_identifier.js.html b/docs/ast_identifier.js.html index 725e12be4..5add70f6b 100644 --- a/docs/ast_identifier.js.html +++ b/docs/ast_identifier.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_if.js.html b/docs/ast_if.js.html index fd17de8b9..d9d4f234b 100644 --- a/docs/ast_if.js.html +++ b/docs/ast_if.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_include.js.html b/docs/ast_include.js.html index 9fca7177c..dd8ad2915 100644 --- a/docs/ast_include.js.html +++ b/docs/ast_include.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_inline.js.html b/docs/ast_inline.js.html index df111ee2e..36d653b0e 100644 --- a/docs/ast_inline.js.html +++ b/docs/ast_inline.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_interface.js.html b/docs/ast_interface.js.html index ba9d5e0c9..9a3e1e6e3 100644 --- a/docs/ast_interface.js.html +++ b/docs/ast_interface.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_isset.js.html b/docs/ast_isset.js.html index 8ce19f483..391fa8f99 100644 --- a/docs/ast_isset.js.html +++ b/docs/ast_isset.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_label.js.html b/docs/ast_label.js.html index a9f13ae89..f345914d1 100644 --- a/docs/ast_label.js.html +++ b/docs/ast_label.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_list.js.html b/docs/ast_list.js.html index 8d07bd804..c8792b914 100644 --- a/docs/ast_list.js.html +++ b/docs/ast_list.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_literal.js.html b/docs/ast_literal.js.html index 2f28b99f3..e7d8ee3e7 100644 --- a/docs/ast_literal.js.html +++ b/docs/ast_literal.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_location.js.html b/docs/ast_location.js.html index e150a7792..21047df3a 100644 --- a/docs/ast_location.js.html +++ b/docs/ast_location.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_lookup.js.html b/docs/ast_lookup.js.html index 1c2a64849..919b3abc2 100644 --- a/docs/ast_lookup.js.html +++ b/docs/ast_lookup.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_magic.js.html b/docs/ast_magic.js.html index cb2ec0f83..5e3e4f3a2 100644 --- a/docs/ast_magic.js.html +++ b/docs/ast_magic.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_method.js.html b/docs/ast_method.js.html index 335b476ec..c566be882 100644 --- a/docs/ast_method.js.html +++ b/docs/ast_method.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_namespace.js.html b/docs/ast_namespace.js.html index cdc1a5ec9..9fcc70a20 100644 --- a/docs/ast_namespace.js.html +++ b/docs/ast_namespace.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_new.js.html b/docs/ast_new.js.html index d7b12f10d..223fb6d4c 100644 --- a/docs/ast_new.js.html +++ b/docs/ast_new.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_node.js.html b/docs/ast_node.js.html index ab60f6d16..69aa63ed4 100644 --- a/docs/ast_node.js.html +++ b/docs/ast_node.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_nowdoc.js.html b/docs/ast_nowdoc.js.html index 0a03ca6b9..d19980c11 100644 --- a/docs/ast_nowdoc.js.html +++ b/docs/ast_nowdoc.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_number.js.html b/docs/ast_number.js.html index a351cb088..75c7ee709 100644 --- a/docs/ast_number.js.html +++ b/docs/ast_number.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_offsetlookup.js.html b/docs/ast_offsetlookup.js.html index 48a9140dd..526c7e026 100644 --- a/docs/ast_offsetlookup.js.html +++ b/docs/ast_offsetlookup.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_operation.js.html b/docs/ast_operation.js.html index 72807e7c5..6bc384700 100644 --- a/docs/ast_operation.js.html +++ b/docs/ast_operation.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_parameter.js.html b/docs/ast_parameter.js.html index 4e2659b29..6bd67b81f 100644 --- a/docs/ast_parameter.js.html +++ b/docs/ast_parameter.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_parentreference.js.html b/docs/ast_parentreference.js.html index 213b52aeb..8dd3561b2 100644 --- a/docs/ast_parentreference.js.html +++ b/docs/ast_parentreference.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_position.js.html b/docs/ast_position.js.html index 29771a93d..1b1356df3 100644 --- a/docs/ast_position.js.html +++ b/docs/ast_position.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_post.js.html b/docs/ast_post.js.html index 9c333e95e..1af334906 100644 --- a/docs/ast_post.js.html +++ b/docs/ast_post.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_pre.js.html b/docs/ast_pre.js.html index 353bf2909..d1e675a10 100644 --- a/docs/ast_pre.js.html +++ b/docs/ast_pre.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_print.js.html b/docs/ast_print.js.html index ef39309c9..d56eb1e65 100644 --- a/docs/ast_print.js.html +++ b/docs/ast_print.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_program.js.html b/docs/ast_program.js.html index da46f3665..1a72bebe9 100644 --- a/docs/ast_program.js.html +++ b/docs/ast_program.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_property.js.html b/docs/ast_property.js.html index 08a541ce9..155ac9a71 100644 --- a/docs/ast_property.js.html +++ b/docs/ast_property.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_propertylookup.js.html b/docs/ast_propertylookup.js.html index c5ccb9c4a..53135a9fc 100644 --- a/docs/ast_propertylookup.js.html +++ b/docs/ast_propertylookup.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_reference.js.html b/docs/ast_reference.js.html index c0c072b08..82812a9bd 100644 --- a/docs/ast_reference.js.html +++ b/docs/ast_reference.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_retif.js.html b/docs/ast_retif.js.html index 526649c42..5b0ee2475 100644 --- a/docs/ast_retif.js.html +++ b/docs/ast_retif.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_return.js.html b/docs/ast_return.js.html index 5b8efc2e3..b311d6902 100644 --- a/docs/ast_return.js.html +++ b/docs/ast_return.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_selfreference.js.html b/docs/ast_selfreference.js.html index 445d5c6e6..850bf455b 100644 --- a/docs/ast_selfreference.js.html +++ b/docs/ast_selfreference.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_silent.js.html b/docs/ast_silent.js.html index 4be5f6cb7..49a9a7b46 100644 --- a/docs/ast_silent.js.html +++ b/docs/ast_silent.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_statement.js.html b/docs/ast_statement.js.html index ab41a7ffa..f53b93711 100644 --- a/docs/ast_statement.js.html +++ b/docs/ast_statement.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_static.js.html b/docs/ast_static.js.html index d9988fc47..120ad092a 100644 --- a/docs/ast_static.js.html +++ b/docs/ast_static.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_staticlookup.js.html b/docs/ast_staticlookup.js.html index d56a43d70..0ee7a2afc 100644 --- a/docs/ast_staticlookup.js.html +++ b/docs/ast_staticlookup.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_staticreference.js.html b/docs/ast_staticreference.js.html index bed09aa91..deba7664b 100644 --- a/docs/ast_staticreference.js.html +++ b/docs/ast_staticreference.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_string.js.html b/docs/ast_string.js.html index f5c52d08c..f5db216c1 100644 --- a/docs/ast_string.js.html +++ b/docs/ast_string.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_switch.js.html b/docs/ast_switch.js.html index d8923129e..31908fe58 100644 --- a/docs/ast_switch.js.html +++ b/docs/ast_switch.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_sys.js.html b/docs/ast_sys.js.html index b57922211..a1b9cb200 100644 --- a/docs/ast_sys.js.html +++ b/docs/ast_sys.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_throw.js.html b/docs/ast_throw.js.html index 297e55e18..425a25f21 100644 --- a/docs/ast_throw.js.html +++ b/docs/ast_throw.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_trait.js.html b/docs/ast_trait.js.html index 320a51324..0439c4ef8 100644 --- a/docs/ast_trait.js.html +++ b/docs/ast_trait.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_traitalias.js.html b/docs/ast_traitalias.js.html index 8964c750e..94c601f76 100644 --- a/docs/ast_traitalias.js.html +++ b/docs/ast_traitalias.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_traitprecedence.js.html b/docs/ast_traitprecedence.js.html index c37dc3f98..8f02464d4 100644 --- a/docs/ast_traitprecedence.js.html +++ b/docs/ast_traitprecedence.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_traituse.js.html b/docs/ast_traituse.js.html index 04350c0d4..816fabef4 100644 --- a/docs/ast_traituse.js.html +++ b/docs/ast_traituse.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_try.js.html b/docs/ast_try.js.html index c34bf3d1f..005ebabd8 100644 --- a/docs/ast_try.js.html +++ b/docs/ast_try.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_typereference.js.html b/docs/ast_typereference.js.html new file mode 100644 index 000000000..18b61d29a --- /dev/null +++ b/docs/ast_typereference.js.html @@ -0,0 +1,167 @@ + + + + + + + + + + + ast/typereference.js - Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ ast/typereference.js +

+ + + + + +
+
+
/**
+ * Copyright (C) 2018 Glayzzle (BSD3 License)
+ * @authors https://github.com/glayzzle/php-parser/graphs/contributors
+ * @url http://glayzzle.com
+ */
+"use strict";
+
+const Reference = require("./reference");
+const KIND = "typereference";
+
+/**
+ * Defines a class reference node
+ * @constructor TypeReference
+ * @extends {Reference}
+ * @property {string} name
+ */
+const TypeReference = Reference.extends(KIND, function TypeReference(
+  name,
+  docs,
+  location
+) {
+  Reference.apply(this, [KIND, docs, location]);
+  this.name = name;
+});
+
+TypeReference.types = ["int", "float", "string", "bool", "object", "array"];
+
+module.exports = TypeReference;
+
+
+
+ + + + +
+ +
+ + + + + + + + + + + + diff --git a/docs/ast_unary.js.html b/docs/ast_unary.js.html index 1eea5d7fd..c34b078c6 100644 --- a/docs/ast_unary.js.html +++ b/docs/ast_unary.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_unset.js.html b/docs/ast_unset.js.html index 5d20c8b52..c5f6a6277 100644 --- a/docs/ast_unset.js.html +++ b/docs/ast_unset.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_usegroup.js.html b/docs/ast_usegroup.js.html index ddae6397c..01f1e67bf 100644 --- a/docs/ast_usegroup.js.html +++ b/docs/ast_usegroup.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_useitem.js.html b/docs/ast_useitem.js.html index bd37738ad..6b2cb5d45 100644 --- a/docs/ast_useitem.js.html +++ b/docs/ast_useitem.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_variable.js.html b/docs/ast_variable.js.html index 5555ce0cf..603428732 100644 --- a/docs/ast_variable.js.html +++ b/docs/ast_variable.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_variadic.js.html b/docs/ast_variadic.js.html index 7fe53be77..ec9be8004 100644 --- a/docs/ast_variadic.js.html +++ b/docs/ast_variadic.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_while.js.html b/docs/ast_while.js.html index c71d57931..f940b9916 100644 --- a/docs/ast_while.js.html +++ b/docs/ast_while.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_yield.js.html b/docs/ast_yield.js.html index a49d14fc2..93eca3ac8 100644 --- a/docs/ast_yield.js.html +++ b/docs/ast_yield.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/ast_yieldfrom.js.html b/docs/ast_yieldfrom.js.html index 853a12853..65172a448 100644 --- a/docs/ast_yieldfrom.js.html +++ b/docs/ast_yieldfrom.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/engine.html b/docs/engine.html index 6931fc197..0a75bfe3c 100644 --- a/docs/engine.html +++ b/docs/engine.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/global.html b/docs/global.html index 6d5a5379f..c40aeb44c 100644 --- a/docs/global.html +++ b/docs/global.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/index.html b/docs/index.html index 048a5f598..53983ab44 100644 --- a/docs/index.html +++ b/docs/index.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/index.js.html b/docs/index.js.html index dc07e59d2..4bfaec839 100644 --- a/docs/index.js.html +++ b/docs/index.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/lexer.html b/docs/lexer.html index 1a8bc38e4..6036843f0 100644 --- a/docs/lexer.html +++ b/docs/lexer.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/lexer.js.html b/docs/lexer.js.html index cfe7a7fa3..cd28fd934 100644 --- a/docs/lexer.js.html +++ b/docs/lexer.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/lexer_comments.js.html b/docs/lexer_comments.js.html index 42879fc17..3e4ec4eeb 100644 --- a/docs/lexer_comments.js.html +++ b/docs/lexer_comments.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/lexer_strings.js.html b/docs/lexer_strings.js.html index 4e214292a..4ab6c2de4 100644 --- a/docs/lexer_strings.js.html +++ b/docs/lexer_strings.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser.html b/docs/parser.html index be0c1d828..f53f8c9d0 100644 --- a/docs/parser.html +++ b/docs/parser.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser.js.html b/docs/parser.js.html index 568982577..bb85e61c7 100644 --- a/docs/parser.js.html +++ b/docs/parser.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_array.js.html b/docs/parser_array.js.html index 6c68929c4..e36c7f05b 100644 --- a/docs/parser_array.js.html +++ b/docs/parser_array.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_class.js.html b/docs/parser_class.js.html index bd5d97d73..1df3afaf4 100644 --- a/docs/parser_class.js.html +++ b/docs/parser_class.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_comment.js.html b/docs/parser_comment.js.html index 2d6762638..f55ddfa2c 100644 --- a/docs/parser_comment.js.html +++ b/docs/parser_comment.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_expr.js.html b/docs/parser_expr.js.html index 955cb32e5..9408536fd 100644 --- a/docs/parser_expr.js.html +++ b/docs/parser_expr.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_function.js.html b/docs/parser_function.js.html index 93704bd39..0970c2a22 100644 --- a/docs/parser_function.js.html +++ b/docs/parser_function.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

@@ -343,21 +343,34 @@

* ``` */ read_type: function() { - const result = this.node("classreference"); - switch (this.token) { - case this.tok.T_ARRAY: + const result = this.node("typereference"); + let type = null; + if (this.token === this.tok.T_ARRAY || this.token === this.tok.T_CALLABLE) { + let type = this.text(); + this.next(); + return result(type); + } else if (this.token === this.tok.T_STRING) { + let type = this.text(); + const backup = [this.token, this.lexer.getState()]; + this.next(); + if ( + this.token !== this.tok.T_NS_SEPARATOR && + this.ast.typereference.types.indexOf(type.toLowerCase()) > -1 + ) { + return result(type); + } else { + // rollback a classic namespace + this.lexer.tokens.push(backup); this.next(); - return result(["", "array"], false); - case this.tok.T_NAMESPACE: - case this.tok.T_NS_SEPARATOR: - case this.tok.T_STRING: return this.read_namespace_name(); - case this.tok.T_CALLABLE: - this.next(); - return result(["", "callable"], false); - default: - return null; + } + } else if ( + this.token === this.tok.T_NAMESPACE || + this.token === this.tok.T_NS_SEPARATOR + ) { + return this.read_namespace_name(); } + return null; } }; diff --git a/docs/parser_if.js.html b/docs/parser_if.js.html index a87191d14..20e547b22 100644 --- a/docs/parser_if.js.html +++ b/docs/parser_if.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_loops.js.html b/docs/parser_loops.js.html index 920e07176..85fc3e3ac 100644 --- a/docs/parser_loops.js.html +++ b/docs/parser_loops.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_main.js.html b/docs/parser_main.js.html index 1b113f536..26521ed6f 100644 --- a/docs/parser_main.js.html +++ b/docs/parser_main.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_namespace.js.html b/docs/parser_namespace.js.html index 664bfaeff..b01756f02 100644 --- a/docs/parser_namespace.js.html +++ b/docs/parser_namespace.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_scalar.js.html b/docs/parser_scalar.js.html index 4093c26f1..070ebce04 100644 --- a/docs/parser_scalar.js.html +++ b/docs/parser_scalar.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_statement.js.html b/docs/parser_statement.js.html index 7cad14a3a..e43dd281f 100644 --- a/docs/parser_statement.js.html +++ b/docs/parser_statement.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_switch.js.html b/docs/parser_switch.js.html index 46386ccdf..665a7d3db 100644 --- a/docs/parser_switch.js.html +++ b/docs/parser_switch.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_try.js.html b/docs/parser_try.js.html index cfa739e7a..11f46d926 100644 --- a/docs/parser_try.js.html +++ b/docs/parser_try.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_utils.js.html b/docs/parser_utils.js.html index 183c88580..d6b261cc9 100644 --- a/docs/parser_utils.js.html +++ b/docs/parser_utils.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/parser_variable.js.html b/docs/parser_variable.js.html index 4bd9ee794..9c60c8bd9 100644 --- a/docs/parser_variable.js.html +++ b/docs/parser_variable.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/tokens.js.html b/docs/tokens.js.html index 5f226333d..5cd16a033 100644 --- a/docs/tokens.js.html +++ b/docs/tokens.js.html @@ -86,7 +86,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/tutorial-AST_.html b/docs/tutorial-AST_.html index b0faaf23a..05a926993 100644 --- a/docs/tutorial-AST_.html +++ b/docs/tutorial-AST_.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/tutorial-Engine_.html b/docs/tutorial-Engine_.html index 2b0420571..50da98bb9 100644 --- a/docs/tutorial-Engine_.html +++ b/docs/tutorial-Engine_.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/tutorial-Options.html b/docs/tutorial-Options.html index 04eb70d7e..5c13d93e4 100644 --- a/docs/tutorial-Options.html +++ b/docs/tutorial-Options.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/tutorial-Parser_.html b/docs/tutorial-Parser_.html index 1a49256bc..259b1abf8 100644 --- a/docs/tutorial-Parser_.html +++ b/docs/tutorial-Parser_.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/docs/variadic.html b/docs/variadic.html index 9bc48e65e..ab7b241d4 100644 --- a/docs/variadic.html +++ b/docs/variadic.html @@ -84,7 +84,7 @@

php-parser

-

Classes

+

Classes

diff --git a/package.json b/package.json index 467189368..1e31828b1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "php-parser", - "version": "3.0.0-prerelease.5", + "version": "3.0.0-prerelease.6", "description": "Parse PHP code and returns its AST", "main": "src/index.js", "browser": "dist/php-parser.js",