@appthreat/atom 1.7.5 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/astgen.js +6 -2
- package/index.js +3 -1
- package/package.json +3 -2
- package/phpastgen.js +31 -0
- package/plugins/autoload.php +25 -0
- package/plugins/bin/atom +1 -1
- package/plugins/bin/atom.bat +1 -1
- package/plugins/bin/php-parse +119 -0
- package/plugins/composer/ClassLoader.php +579 -0
- package/plugins/composer/InstalledVersions.php +359 -0
- package/plugins/composer/LICENSE +21 -0
- package/plugins/composer/autoload_classmap.php +260 -0
- package/plugins/composer/autoload_namespaces.php +9 -0
- package/plugins/composer/autoload_psr4.php +10 -0
- package/plugins/composer/autoload_real.php +36 -0
- package/plugins/composer/autoload_static.php +286 -0
- package/plugins/composer/installed.json +67 -0
- package/plugins/composer/installed.php +32 -0
- package/plugins/lib/{com.fasterxml.jackson.core.jackson-annotations-2.15.2.jar → com.fasterxml.jackson.core.jackson-annotations-2.16.0.jar} +0 -0
- package/plugins/lib/com.fasterxml.jackson.core.jackson-core-2.16.0.jar +0 -0
- package/plugins/lib/{com.fasterxml.jackson.core.jackson-databind-2.15.2.jar → com.fasterxml.jackson.core.jackson-databind-2.16.0.jar} +0 -0
- package/plugins/lib/{com.github.javaparser.javaparser-core-3.25.6.jar → com.github.javaparser.javaparser-core-3.25.7.jar} +0 -0
- package/plugins/lib/{com.github.javaparser.javaparser-symbol-solver-core-3.25.6.jar → com.github.javaparser.javaparser-symbol-solver-core-3.25.7.jar} +0 -0
- package/plugins/lib/{com.typesafe.config-1.4.2.jar → com.typesafe.config-1.4.3.jar} +0 -0
- package/plugins/lib/io.appthreat.atom-1.8.1-classpath.jar +0 -0
- package/plugins/lib/{io.appthreat.atom-1.7.5.jar → io.appthreat.atom-1.8.1.jar} +0 -0
- package/plugins/lib/{io.appthreat.c2cpg_3-1.0.10.jar → io.appthreat.c2cpg_3-1.1.3.jar} +0 -0
- package/plugins/lib/{io.appthreat.dataflowengineoss_3-1.0.10.jar → io.appthreat.dataflowengineoss_3-1.1.3.jar} +0 -0
- package/plugins/lib/{io.appthreat.javasrc2cpg_3-1.0.10.jar → io.appthreat.javasrc2cpg_3-1.1.3.jar} +0 -0
- package/plugins/lib/{io.appthreat.jimple2cpg_3-1.0.10.jar → io.appthreat.jimple2cpg_3-1.1.3.jar} +0 -0
- package/plugins/lib/{io.appthreat.jssrc2cpg_3-1.0.10.jar → io.appthreat.jssrc2cpg_3-1.1.3.jar} +0 -0
- package/plugins/lib/io.appthreat.php2atom_3-1.1.3.jar +0 -0
- package/plugins/lib/{io.appthreat.pysrc2cpg_3-1.0.10.jar → io.appthreat.pysrc2cpg_3-1.1.3.jar} +0 -0
- package/plugins/lib/{io.appthreat.semanticcpg_3-1.0.10.jar → io.appthreat.semanticcpg_3-1.1.3.jar} +0 -0
- package/plugins/lib/{io.appthreat.x2cpg_3-1.0.10.jar → io.appthreat.x2cpg_3-1.1.3.jar} +0 -0
- package/plugins/lib/io.circe.circe-core_3-0.14.6.jar +0 -0
- package/plugins/lib/io.circe.circe-generic_3-0.14.6.jar +0 -0
- package/plugins/lib/io.circe.circe-jawn_3-0.14.6.jar +0 -0
- package/plugins/lib/io.circe.circe-numbers_3-0.14.6.jar +0 -0
- package/plugins/lib/io.circe.circe-parser_3-0.14.6.jar +0 -0
- package/plugins/lib/org.gradle.gradle-tooling-api-8.5.jar +0 -0
- package/plugins/lib/{org.json4s.json4s-ast_3-4.0.6.jar → org.json4s.json4s-ast_3-4.0.7.jar} +0 -0
- package/plugins/lib/{org.json4s.json4s-core_3-4.0.6.jar → org.json4s.json4s-core_3-4.0.7.jar} +0 -0
- package/plugins/lib/{org.json4s.json4s-native-core_3-4.0.6.jar → org.json4s.json4s-native-core_3-4.0.7.jar} +0 -0
- package/plugins/lib/{org.json4s.json4s-native_3-4.0.6.jar → org.json4s.json4s-native_3-4.0.7.jar} +0 -0
- package/plugins/lib/{org.json4s.json4s-scalap_3-4.0.6.jar → org.json4s.json4s-scalap_3-4.0.7.jar} +0 -0
- package/plugins/lib/org.scala-lang.modules.scala-parser-combinators_3-2.3.0.jar +0 -0
- package/plugins/nikic/php-parser/.php-cs-fixer.dist.php +31 -0
- package/plugins/nikic/php-parser/LICENSE +29 -0
- package/plugins/nikic/php-parser/Makefile +10 -0
- package/plugins/nikic/php-parser/README.md +233 -0
- package/plugins/nikic/php-parser/bin/php-parse +206 -0
- package/plugins/nikic/php-parser/composer.json +43 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/ClassConst.php +150 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Class_.php +151 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Declaration.php +50 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/EnumCase.php +87 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Enum_.php +116 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/FunctionLike.php +73 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Function_.php +67 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Interface_.php +94 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Method.php +147 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Namespace_.php +45 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Param.php +149 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Property.php +161 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/TraitUse.php +65 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/TraitUseAdaptation.php +145 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Trait_.php +83 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder/Use_.php +49 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Builder.php +12 -0
- package/plugins/nikic/php-parser/lib/PhpParser/BuilderFactory.php +375 -0
- package/plugins/nikic/php-parser/lib/PhpParser/BuilderHelpers.php +333 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Comment/Doc.php +6 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Comment.php +207 -0
- package/plugins/nikic/php-parser/lib/PhpParser/ConstExprEvaluationException.php +6 -0
- package/plugins/nikic/php-parser/lib/PhpParser/ConstExprEvaluator.php +234 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Error.php +171 -0
- package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php +43 -0
- package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler/Throwing.php +17 -0
- package/plugins/nikic/php-parser/lib/PhpParser/ErrorHandler.php +12 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Internal/DiffElem.php +31 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Internal/Differ.php +178 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Internal/PrintableNewAnonClassNode.php +71 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Internal/TokenPolyfill.php +237 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Internal/TokenStream.php +271 -0
- package/plugins/nikic/php-parser/lib/PhpParser/JsonDecoder.php +108 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/Emulative.php +226 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AttributeEmulator.php +49 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/EnumTokenEmulator.php +26 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ExplicitOctalEmulator.php +45 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/KeywordEmulator.php +56 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/MatchTokenEmulator.php +19 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/NullsafeTokenEmulator.php +60 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyFunctionTokenEmulator.php +31 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyTokenEmulator.php +31 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReverseEmulator.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/TokenEmulator.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Lexer.php +116 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Modifiers.php +69 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NameContext.php +284 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Arg.php +44 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/ArrayItem.php +43 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Attribute.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/AttributeGroup.php +27 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/ClosureUse.php +36 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/ComplexType.php +13 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Const_.php +36 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/DeclareItem.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayDimFetch.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayItem.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Array_.php +34 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ArrowFunction.php +84 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Assign.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseAnd.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseOr.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseXor.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Coalesce.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Concat.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Div.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Minus.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mod.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mul.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Plus.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Pow.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftLeft.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftRight.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/AssignRef.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseAnd.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseOr.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseXor.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanAnd.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanOr.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Coalesce.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Concat.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Div.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Equal.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Greater.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/GreaterOrEqual.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Identical.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalAnd.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalOr.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalXor.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Minus.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mod.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mul.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotEqual.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotIdentical.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Plus.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Pow.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftLeft.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftRight.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Smaller.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/SmallerOrEqual.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Spaceship.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BitwiseNot.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/BooleanNot.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/CallLike.php +35 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Array_.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Bool_.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Double.php +16 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Int_.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Object_.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/String_.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Unset_.php +11 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Cast.php +25 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ClassConstFetch.php +36 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Clone_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Closure.php +86 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ClosureUse.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ConstFetch.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Empty_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Error.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ErrorSuppress.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Eval_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Exit_.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/FuncCall.php +38 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Include_.php +38 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Instanceof_.php +35 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Isset_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/List_.php +34 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Match_.php +32 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/MethodCall.php +45 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/New_.php +40 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafeMethodCall.php +45 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafePropertyFetch.php +35 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PostDec.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PostInc.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PreDec.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PreInc.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Print_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/PropertyFetch.php +35 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/ShellExec.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/StaticCall.php +45 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/StaticPropertyFetch.php +36 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Ternary.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Throw_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryMinus.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryPlus.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Variable.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/YieldFrom.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr/Yield_.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Expr.php +8 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/FunctionLike.php +40 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Identifier.php +75 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/InterpolatedStringPart.php +32 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/IntersectionType.php +27 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/MatchArm.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Name/FullyQualified.php +49 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Name/Relative.php +49 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Name.php +269 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/NullableType.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Param.php +84 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/PropertyItem.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/DNumber.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/Encapsed.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/EncapsedStringPart.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/Float_.php +78 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/Int_.php +82 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/InterpolatedString.php +34 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/LNumber.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Class_.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Dir.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/File.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Function_.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Line.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Method.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Namespace_.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Trait_.php +15 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst.php +27 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar/String_.php +161 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Scalar.php +6 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/StaticVar.php +39 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Block.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Break_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Case_.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Catch_.php +40 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassConst.php +77 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassLike.php +109 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassMethod.php +154 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Class_.php +94 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Const_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Continue_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/DeclareDeclare.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Declare_.php +34 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Do_.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Echo_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/ElseIf_.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Else_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/EnumCase.php +36 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Enum_.php +44 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Expression.php +32 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Finally_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/For_.php +47 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Foreach_.php +50 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Function_.php +81 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Global_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Goto_.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/GroupUse.php +41 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/HaltCompiler.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/If_.php +46 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/InlineHTML.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Interface_.php +40 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Label.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Namespace_.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Nop.php +16 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Property.php +82 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/PropertyProperty.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Return_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/StaticVar.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Static_.php +30 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Switch_.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUse.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Alias.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Precedence.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation.php +12 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Trait_.php +34 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/TryCatch.php +37 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Unset_.php +29 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php +3 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/Use_.php +47 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt/While_.php +33 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/Stmt.php +8 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/UnionType.php +27 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/UseItem.php +55 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/VarLikeIdentifier.php +16 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node/VariadicPlaceholder.php +27 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Node.php +146 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeAbstract.php +178 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeDumper.php +290 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeFinder.php +90 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeTraverser.php +278 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeTraverserInterface.php +26 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/CloningVisitor.php +19 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/CommentAnnotatingVisitor.php +82 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/FindingVisitor.php +47 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/FirstFindingVisitor.php +49 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/NameResolver.php +262 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/NodeConnectingVisitor.php +51 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor/ParentConnectingVisitor.php +38 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitor.php +124 -0
- package/plugins/nikic/php-parser/lib/PhpParser/NodeVisitorAbstract.php +24 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Parser/Php7.php +2699 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Parser/Php8.php +2717 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Parser.php +24 -0
- package/plugins/nikic/php-parser/lib/PhpParser/ParserAbstract.php +1241 -0
- package/plugins/nikic/php-parser/lib/PhpParser/ParserFactory.php +42 -0
- package/plugins/nikic/php-parser/lib/PhpParser/PhpVersion.php +164 -0
- package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinter/Standard.php +1177 -0
- package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinter.php +51 -0
- package/plugins/nikic/php-parser/lib/PhpParser/PrettyPrinterAbstract.php +1655 -0
- package/plugins/nikic/php-parser/lib/PhpParser/Token.php +18 -0
- package/plugins/nikic/php-parser/lib/PhpParser/compatibility_tokens.php +56 -0
- package/plugins/nikic/php-parser/phpstan-baseline.neon +236 -0
- package/plugins/nikic/php-parser/phpstan.neon.dist +8 -0
- package/utils.mjs +10 -0
- package/plugins/lib/com.fasterxml.jackson.core.jackson-core-2.15.2.jar +0 -0
- package/plugins/lib/io.appthreat.atom-1.7.5-classpath.jar +0 -0
- package/plugins/lib/io.circe.circe-core_3-0.14.5.jar +0 -0
- package/plugins/lib/io.circe.circe-generic_3-0.14.5.jar +0 -0
- package/plugins/lib/io.circe.circe-jawn_3-0.14.5.jar +0 -0
- package/plugins/lib/io.circe.circe-numbers_3-0.14.5.jar +0 -0
- package/plugins/lib/io.circe.circe-parser_3-0.14.5.jar +0 -0
- package/plugins/lib/org.gradle.gradle-tooling-api-8.3.jar +0 -0
- package/plugins/lib/org.scala-lang.modules.scala-parser-combinators_3-2.2.0.jar +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class Class_ extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__CLASS__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_Class';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class Dir extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__DIR__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_Dir';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class File extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__FILE__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_File';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class Function_ extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__FUNCTION__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_Function';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class Line extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__LINE__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_Line';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class Method extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__METHOD__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_Method';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class Namespace_ extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__NAMESPACE__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_Namespace';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar\MagicConst;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar\MagicConst;
|
|
6
|
+
|
|
7
|
+
class Trait_ extends MagicConst {
|
|
8
|
+
public function getName(): string {
|
|
9
|
+
return '__TRAIT__';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public function getType(): string {
|
|
13
|
+
return 'Scalar_MagicConst_Trait';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar;
|
|
6
|
+
|
|
7
|
+
abstract class MagicConst extends Scalar {
|
|
8
|
+
/**
|
|
9
|
+
* Constructs a magic constant node.
|
|
10
|
+
*
|
|
11
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
12
|
+
*/
|
|
13
|
+
public function __construct(array $attributes = []) {
|
|
14
|
+
$this->attributes = $attributes;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
public function getSubNodeNames(): array {
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Get name of magic constant.
|
|
23
|
+
*
|
|
24
|
+
* @return string Name of magic constant
|
|
25
|
+
*/
|
|
26
|
+
abstract public function getName(): string;
|
|
27
|
+
}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Error;
|
|
6
|
+
use PhpParser\Node\Scalar;
|
|
7
|
+
|
|
8
|
+
class String_ extends Scalar {
|
|
9
|
+
/* For use in "kind" attribute */
|
|
10
|
+
public const KIND_SINGLE_QUOTED = 1;
|
|
11
|
+
public const KIND_DOUBLE_QUOTED = 2;
|
|
12
|
+
public const KIND_HEREDOC = 3;
|
|
13
|
+
public const KIND_NOWDOC = 4;
|
|
14
|
+
|
|
15
|
+
/** @var string String value */
|
|
16
|
+
public string $value;
|
|
17
|
+
|
|
18
|
+
/** @var array<string, string> Escaped character to its decoded value */
|
|
19
|
+
protected static array $replacements = [
|
|
20
|
+
'\\' => '\\',
|
|
21
|
+
'$' => '$',
|
|
22
|
+
'n' => "\n",
|
|
23
|
+
'r' => "\r",
|
|
24
|
+
't' => "\t",
|
|
25
|
+
'f' => "\f",
|
|
26
|
+
'v' => "\v",
|
|
27
|
+
'e' => "\x1B",
|
|
28
|
+
];
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Constructs a string scalar node.
|
|
32
|
+
*
|
|
33
|
+
* @param string $value Value of the string
|
|
34
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
35
|
+
*/
|
|
36
|
+
public function __construct(string $value, array $attributes = []) {
|
|
37
|
+
$this->attributes = $attributes;
|
|
38
|
+
$this->value = $value;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public function getSubNodeNames(): array {
|
|
42
|
+
return ['value'];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @param array<string, mixed> $attributes
|
|
47
|
+
* @param bool $parseUnicodeEscape Whether to parse PHP 7 \u escapes
|
|
48
|
+
*/
|
|
49
|
+
public static function fromString(string $str, array $attributes = [], bool $parseUnicodeEscape = true): self {
|
|
50
|
+
$attributes['kind'] = ($str[0] === "'" || ($str[1] === "'" && ($str[0] === 'b' || $str[0] === 'B')))
|
|
51
|
+
? Scalar\String_::KIND_SINGLE_QUOTED
|
|
52
|
+
: Scalar\String_::KIND_DOUBLE_QUOTED;
|
|
53
|
+
|
|
54
|
+
$attributes['rawValue'] = $str;
|
|
55
|
+
|
|
56
|
+
$string = self::parse($str, $parseUnicodeEscape);
|
|
57
|
+
|
|
58
|
+
return new self($string, $attributes);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* @internal
|
|
63
|
+
*
|
|
64
|
+
* Parses a string token.
|
|
65
|
+
*
|
|
66
|
+
* @param string $str String token content
|
|
67
|
+
* @param bool $parseUnicodeEscape Whether to parse PHP 7 \u escapes
|
|
68
|
+
*
|
|
69
|
+
* @return string The parsed string
|
|
70
|
+
*/
|
|
71
|
+
public static function parse(string $str, bool $parseUnicodeEscape = true): string {
|
|
72
|
+
$bLength = 0;
|
|
73
|
+
if ('b' === $str[0] || 'B' === $str[0]) {
|
|
74
|
+
$bLength = 1;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
if ('\'' === $str[$bLength]) {
|
|
78
|
+
return str_replace(
|
|
79
|
+
['\\\\', '\\\''],
|
|
80
|
+
['\\', '\''],
|
|
81
|
+
substr($str, $bLength + 1, -1)
|
|
82
|
+
);
|
|
83
|
+
} else {
|
|
84
|
+
return self::parseEscapeSequences(
|
|
85
|
+
substr($str, $bLength + 1, -1), '"', $parseUnicodeEscape
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* @internal
|
|
92
|
+
*
|
|
93
|
+
* Parses escape sequences in strings (all string types apart from single quoted).
|
|
94
|
+
*
|
|
95
|
+
* @param string $str String without quotes
|
|
96
|
+
* @param null|string $quote Quote type
|
|
97
|
+
* @param bool $parseUnicodeEscape Whether to parse PHP 7 \u escapes
|
|
98
|
+
*
|
|
99
|
+
* @return string String with escape sequences parsed
|
|
100
|
+
*/
|
|
101
|
+
public static function parseEscapeSequences(string $str, ?string $quote, bool $parseUnicodeEscape = true): string {
|
|
102
|
+
if (null !== $quote) {
|
|
103
|
+
$str = str_replace('\\' . $quote, $quote, $str);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
$extra = '';
|
|
107
|
+
if ($parseUnicodeEscape) {
|
|
108
|
+
$extra = '|u\{([0-9a-fA-F]+)\}';
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
return preg_replace_callback(
|
|
112
|
+
'~\\\\([\\\\$nrtfve]|[xX][0-9a-fA-F]{1,2}|[0-7]{1,3}' . $extra . ')~',
|
|
113
|
+
function ($matches) {
|
|
114
|
+
$str = $matches[1];
|
|
115
|
+
|
|
116
|
+
if (isset(self::$replacements[$str])) {
|
|
117
|
+
return self::$replacements[$str];
|
|
118
|
+
}
|
|
119
|
+
if ('x' === $str[0] || 'X' === $str[0]) {
|
|
120
|
+
return chr(hexdec(substr($str, 1)));
|
|
121
|
+
}
|
|
122
|
+
if ('u' === $str[0]) {
|
|
123
|
+
$dec = hexdec($matches[2]);
|
|
124
|
+
// If it overflowed to float, treat as INT_MAX, it will throw an error anyway.
|
|
125
|
+
return self::codePointToUtf8(\is_int($dec) ? $dec : \PHP_INT_MAX);
|
|
126
|
+
} else {
|
|
127
|
+
return chr(octdec($str));
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
$str
|
|
131
|
+
);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Converts a Unicode code point to its UTF-8 encoded representation.
|
|
136
|
+
*
|
|
137
|
+
* @param int $num Code point
|
|
138
|
+
*
|
|
139
|
+
* @return string UTF-8 representation of code point
|
|
140
|
+
*/
|
|
141
|
+
private static function codePointToUtf8(int $num): string {
|
|
142
|
+
if ($num <= 0x7F) {
|
|
143
|
+
return chr($num);
|
|
144
|
+
}
|
|
145
|
+
if ($num <= 0x7FF) {
|
|
146
|
+
return chr(($num >> 6) + 0xC0) . chr(($num & 0x3F) + 0x80);
|
|
147
|
+
}
|
|
148
|
+
if ($num <= 0xFFFF) {
|
|
149
|
+
return chr(($num >> 12) + 0xE0) . chr((($num >> 6) & 0x3F) + 0x80) . chr(($num & 0x3F) + 0x80);
|
|
150
|
+
}
|
|
151
|
+
if ($num <= 0x1FFFFF) {
|
|
152
|
+
return chr(($num >> 18) + 0xF0) . chr((($num >> 12) & 0x3F) + 0x80)
|
|
153
|
+
. chr((($num >> 6) & 0x3F) + 0x80) . chr(($num & 0x3F) + 0x80);
|
|
154
|
+
}
|
|
155
|
+
throw new Error('Invalid UTF-8 codepoint escape sequence: Codepoint too large');
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
public function getType(): string {
|
|
159
|
+
return 'Scalar_String';
|
|
160
|
+
}
|
|
161
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
use PhpParser\NodeAbstract;
|
|
7
|
+
|
|
8
|
+
class StaticVar extends NodeAbstract {
|
|
9
|
+
/** @var Expr\Variable Variable */
|
|
10
|
+
public Expr\Variable $var;
|
|
11
|
+
/** @var null|Node\Expr Default value */
|
|
12
|
+
public ?Expr $default;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Constructs a static variable node.
|
|
16
|
+
*
|
|
17
|
+
* @param Expr\Variable $var Name
|
|
18
|
+
* @param null|Node\Expr $default Default value
|
|
19
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
20
|
+
*/
|
|
21
|
+
public function __construct(
|
|
22
|
+
Expr\Variable $var, ?Node\Expr $default = null, array $attributes = []
|
|
23
|
+
) {
|
|
24
|
+
$this->attributes = $attributes;
|
|
25
|
+
$this->var = $var;
|
|
26
|
+
$this->default = $default;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
public function getSubNodeNames(): array {
|
|
30
|
+
return ['var', 'default'];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public function getType(): string {
|
|
34
|
+
return 'StaticVar';
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// @deprecated compatibility alias
|
|
39
|
+
class_alias(StaticVar::class, Stmt\StaticVar::class);
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Stmt;
|
|
6
|
+
|
|
7
|
+
class Block extends Stmt {
|
|
8
|
+
/** @var Stmt[] Statements */
|
|
9
|
+
public array $stmts;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* A block of statements.
|
|
13
|
+
*
|
|
14
|
+
* @param Stmt[] $stmts Statements
|
|
15
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
16
|
+
*/
|
|
17
|
+
public function __construct(array $stmts, array $attributes = []) {
|
|
18
|
+
$this->attributes = $attributes;
|
|
19
|
+
$this->stmts = $stmts;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
public function getType(): string {
|
|
23
|
+
return 'Stmt_Block';
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getSubNodeNames(): array {
|
|
27
|
+
return ['stmts'];
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Break_ extends Node\Stmt {
|
|
8
|
+
/** @var null|Node\Expr Number of loops to break */
|
|
9
|
+
public ?Node\Expr $num;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Constructs a break node.
|
|
13
|
+
*
|
|
14
|
+
* @param null|Node\Expr $num Number of loops to break
|
|
15
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
16
|
+
*/
|
|
17
|
+
public function __construct(?Node\Expr $num = null, array $attributes = []) {
|
|
18
|
+
$this->attributes = $attributes;
|
|
19
|
+
$this->num = $num;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
public function getSubNodeNames(): array {
|
|
23
|
+
return ['num'];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getType(): string {
|
|
27
|
+
return 'Stmt_Break';
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Case_ extends Node\Stmt {
|
|
8
|
+
/** @var null|Node\Expr Condition (null for default) */
|
|
9
|
+
public ?Node\Expr $cond;
|
|
10
|
+
/** @var Node\Stmt[] Statements */
|
|
11
|
+
public array $stmts;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Constructs a case node.
|
|
15
|
+
*
|
|
16
|
+
* @param null|Node\Expr $cond Condition (null for default)
|
|
17
|
+
* @param Node\Stmt[] $stmts Statements
|
|
18
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
19
|
+
*/
|
|
20
|
+
public function __construct(?Node\Expr $cond, array $stmts = [], array $attributes = []) {
|
|
21
|
+
$this->attributes = $attributes;
|
|
22
|
+
$this->cond = $cond;
|
|
23
|
+
$this->stmts = $stmts;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getSubNodeNames(): array {
|
|
27
|
+
return ['cond', 'stmts'];
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
public function getType(): string {
|
|
31
|
+
return 'Stmt_Case';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
use PhpParser\Node\Expr;
|
|
7
|
+
|
|
8
|
+
class Catch_ extends Node\Stmt {
|
|
9
|
+
/** @var Node\Name[] Types of exceptions to catch */
|
|
10
|
+
public array $types;
|
|
11
|
+
/** @var Expr\Variable|null Variable for exception */
|
|
12
|
+
public ?Expr\Variable $var;
|
|
13
|
+
/** @var Node\Stmt[] Statements */
|
|
14
|
+
public array $stmts;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Constructs a catch node.
|
|
18
|
+
*
|
|
19
|
+
* @param Node\Name[] $types Types of exceptions to catch
|
|
20
|
+
* @param Expr\Variable|null $var Variable for exception
|
|
21
|
+
* @param Node\Stmt[] $stmts Statements
|
|
22
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
23
|
+
*/
|
|
24
|
+
public function __construct(
|
|
25
|
+
array $types, ?Expr\Variable $var = null, array $stmts = [], array $attributes = []
|
|
26
|
+
) {
|
|
27
|
+
$this->attributes = $attributes;
|
|
28
|
+
$this->types = $types;
|
|
29
|
+
$this->var = $var;
|
|
30
|
+
$this->stmts = $stmts;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public function getSubNodeNames(): array {
|
|
34
|
+
return ['types', 'var', 'stmts'];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
public function getType(): string {
|
|
38
|
+
return 'Stmt_Catch';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Modifiers;
|
|
6
|
+
use PhpParser\Node;
|
|
7
|
+
|
|
8
|
+
class ClassConst extends Node\Stmt {
|
|
9
|
+
/** @var int Modifiers */
|
|
10
|
+
public int $flags;
|
|
11
|
+
/** @var Node\Const_[] Constant declarations */
|
|
12
|
+
public array $consts;
|
|
13
|
+
/** @var Node\AttributeGroup[] PHP attribute groups */
|
|
14
|
+
public array $attrGroups;
|
|
15
|
+
/** @var Node\Identifier|Node\Name|Node\ComplexType|null Type declaration */
|
|
16
|
+
public ?Node $type;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Constructs a class const list node.
|
|
20
|
+
*
|
|
21
|
+
* @param Node\Const_[] $consts Constant declarations
|
|
22
|
+
* @param int $flags Modifiers
|
|
23
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
24
|
+
* @param list<Node\AttributeGroup> $attrGroups PHP attribute groups
|
|
25
|
+
* @param null|Node\Identifier|Node\Name|Node\ComplexType $type Type declaration
|
|
26
|
+
*/
|
|
27
|
+
public function __construct(
|
|
28
|
+
array $consts,
|
|
29
|
+
int $flags = 0,
|
|
30
|
+
array $attributes = [],
|
|
31
|
+
array $attrGroups = [],
|
|
32
|
+
?Node $type = null
|
|
33
|
+
) {
|
|
34
|
+
$this->attributes = $attributes;
|
|
35
|
+
$this->flags = $flags;
|
|
36
|
+
$this->consts = $consts;
|
|
37
|
+
$this->attrGroups = $attrGroups;
|
|
38
|
+
$this->type = $type;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public function getSubNodeNames(): array {
|
|
42
|
+
return ['attrGroups', 'flags', 'type', 'consts'];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Whether constant is explicitly or implicitly public.
|
|
47
|
+
*/
|
|
48
|
+
public function isPublic(): bool {
|
|
49
|
+
return ($this->flags & Modifiers::PUBLIC) !== 0
|
|
50
|
+
|| ($this->flags & Modifiers::VISIBILITY_MASK) === 0;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Whether constant is protected.
|
|
55
|
+
*/
|
|
56
|
+
public function isProtected(): bool {
|
|
57
|
+
return (bool) ($this->flags & Modifiers::PROTECTED);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Whether constant is private.
|
|
62
|
+
*/
|
|
63
|
+
public function isPrivate(): bool {
|
|
64
|
+
return (bool) ($this->flags & Modifiers::PRIVATE);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Whether constant is final.
|
|
69
|
+
*/
|
|
70
|
+
public function isFinal(): bool {
|
|
71
|
+
return (bool) ($this->flags & Modifiers::FINAL);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
public function getType(): string {
|
|
75
|
+
return 'Stmt_ClassConst';
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
use PhpParser\Node\PropertyItem;
|
|
7
|
+
|
|
8
|
+
abstract class ClassLike extends Node\Stmt {
|
|
9
|
+
/** @var Node\Identifier|null Name */
|
|
10
|
+
public ?Node\Identifier $name;
|
|
11
|
+
/** @var Node\Stmt[] Statements */
|
|
12
|
+
public array $stmts;
|
|
13
|
+
/** @var Node\AttributeGroup[] PHP attribute groups */
|
|
14
|
+
public array $attrGroups;
|
|
15
|
+
|
|
16
|
+
/** @var Node\Name|null Namespaced name (if using NameResolver) */
|
|
17
|
+
public ?Node\Name $namespacedName;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @return TraitUse[]
|
|
21
|
+
*/
|
|
22
|
+
public function getTraitUses(): array {
|
|
23
|
+
$traitUses = [];
|
|
24
|
+
foreach ($this->stmts as $stmt) {
|
|
25
|
+
if ($stmt instanceof TraitUse) {
|
|
26
|
+
$traitUses[] = $stmt;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return $traitUses;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @return ClassConst[]
|
|
34
|
+
*/
|
|
35
|
+
public function getConstants(): array {
|
|
36
|
+
$constants = [];
|
|
37
|
+
foreach ($this->stmts as $stmt) {
|
|
38
|
+
if ($stmt instanceof ClassConst) {
|
|
39
|
+
$constants[] = $stmt;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return $constants;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @return Property[]
|
|
47
|
+
*/
|
|
48
|
+
public function getProperties(): array {
|
|
49
|
+
$properties = [];
|
|
50
|
+
foreach ($this->stmts as $stmt) {
|
|
51
|
+
if ($stmt instanceof Property) {
|
|
52
|
+
$properties[] = $stmt;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return $properties;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Gets property with the given name defined directly in this class/interface/trait.
|
|
60
|
+
*
|
|
61
|
+
* @param string $name Name of the property
|
|
62
|
+
*
|
|
63
|
+
* @return Property|null Property node or null if the property does not exist
|
|
64
|
+
*/
|
|
65
|
+
public function getProperty(string $name): ?Property {
|
|
66
|
+
foreach ($this->stmts as $stmt) {
|
|
67
|
+
if ($stmt instanceof Property) {
|
|
68
|
+
foreach ($stmt->props as $prop) {
|
|
69
|
+
if ($prop instanceof PropertyItem && $name === $prop->name->toString()) {
|
|
70
|
+
return $stmt;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Gets all methods defined directly in this class/interface/trait
|
|
80
|
+
*
|
|
81
|
+
* @return ClassMethod[]
|
|
82
|
+
*/
|
|
83
|
+
public function getMethods(): array {
|
|
84
|
+
$methods = [];
|
|
85
|
+
foreach ($this->stmts as $stmt) {
|
|
86
|
+
if ($stmt instanceof ClassMethod) {
|
|
87
|
+
$methods[] = $stmt;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return $methods;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Gets method with the given name defined directly in this class/interface/trait.
|
|
95
|
+
*
|
|
96
|
+
* @param string $name Name of the method (compared case-insensitively)
|
|
97
|
+
*
|
|
98
|
+
* @return ClassMethod|null Method node or null if the method does not exist
|
|
99
|
+
*/
|
|
100
|
+
public function getMethod(string $name): ?ClassMethod {
|
|
101
|
+
$lowerName = strtolower($name);
|
|
102
|
+
foreach ($this->stmts as $stmt) {
|
|
103
|
+
if ($stmt instanceof ClassMethod && $lowerName === $stmt->name->toLowerString()) {
|
|
104
|
+
return $stmt;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
}
|