webshell-analyzer 1.0.0__py3-none-any.whl
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.
- webshell_analyzer/__init__.py +0 -0
- webshell_analyzer/cli/__init__.py +0 -0
- webshell_analyzer/cli/cli.py +151 -0
- webshell_analyzer/extractor/ast_extraction/composer.json +5 -0
- webshell_analyzer/extractor/ast_extraction/composer.lock +77 -0
- webshell_analyzer/extractor/ast_extraction/src/NodeVisitor.php +85 -0
- webshell_analyzer/extractor/ast_extraction/src/astBuilder.php +50 -0
- webshell_analyzer/extractor/ast_extraction/src/astExtractor.php +50 -0
- webshell_analyzer/extractor/ast_extraction/src/featuresDeclare.php +36 -0
- webshell_analyzer/extractor/ast_extraction/vendor/autoload.php +25 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/ClassLoader.php +579 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/InstalledVersions.php +378 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/autoload_classmap.php +10 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/autoload_namespaces.php +9 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/autoload_psr4.php +10 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/autoload_real.php +38 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/autoload_static.php +36 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/installed.json +67 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/installed.php +32 -0
- webshell_analyzer/extractor/ast_extraction/vendor/composer/platform_check.php +26 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/ClassConst.php +150 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Class_.php +151 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Declaration.php +50 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/EnumCase.php +86 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Enum_.php +116 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/FunctionLike.php +73 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Function_.php +67 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Interface_.php +94 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Method.php +147 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Namespace_.php +45 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Param.php +171 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Property.php +223 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/TraitUse.php +65 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/TraitUseAdaptation.php +145 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Trait_.php +83 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder/Use_.php +49 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Builder.php +12 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/BuilderFactory.php +375 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/BuilderHelpers.php +338 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Comment/Doc.php +6 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Comment.php +209 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/ConstExprEvaluationException.php +6 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/ConstExprEvaluator.php +237 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Error.php +173 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php +43 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Throwing.php +17 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler.php +12 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Internal/DiffElem.php +31 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Internal/Differ.php +178 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Internal/PrintableNewAnonClassNode.php +71 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Internal/TokenPolyfill.php +237 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Internal/TokenStream.php +282 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/JsonDecoder.php +108 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/Emulative.php +230 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AsymmetricVisibilityTokenEmulator.php +93 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AttributeEmulator.php +49 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/EnumTokenEmulator.php +26 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ExplicitOctalEmulator.php +45 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/KeywordEmulator.php +60 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/MatchTokenEmulator.php +19 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/NullsafeTokenEmulator.php +60 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/PipeOperatorEmulator.php +45 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/PropertyTokenEmulator.php +19 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyFunctionTokenEmulator.php +31 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyTokenEmulator.php +31 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReverseEmulator.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/TokenEmulator.php +30 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/VoidCastEmulator.php +98 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Lexer.php +116 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Modifiers.php +85 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NameContext.php +284 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Arg.php +44 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/ArrayItem.php +43 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Attribute.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/AttributeGroup.php +27 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/ClosureUse.php +36 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/ComplexType.php +13 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Const_.php +36 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/DeclareItem.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayDimFetch.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayItem.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Array_.php +34 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ArrowFunction.php +84 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Assign.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseAnd.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseOr.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseXor.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Coalesce.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Concat.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Div.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Minus.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mod.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mul.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Plus.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Pow.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftLeft.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftRight.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignRef.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseAnd.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseOr.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseXor.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanAnd.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanOr.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Coalesce.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Concat.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Div.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Equal.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Greater.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/GreaterOrEqual.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Identical.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalAnd.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalOr.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalXor.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Minus.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mod.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mul.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotEqual.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotIdentical.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Pipe.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Plus.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Pow.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftLeft.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftRight.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Smaller.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/SmallerOrEqual.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Spaceship.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BitwiseNot.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BooleanNot.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/CallLike.php +60 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Array_.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Bool_.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Double.php +16 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Int_.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Object_.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/String_.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Unset_.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Void_.php +11 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast.php +25 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ClassConstFetch.php +36 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Clone_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Closure.php +86 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ClosureUse.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ConstFetch.php +30 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Empty_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Error.php +30 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ErrorSuppress.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Eval_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Exit_.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/FuncCall.php +38 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Include_.php +38 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Instanceof_.php +35 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Isset_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/List_.php +34 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Match_.php +32 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/MethodCall.php +45 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/New_.php +40 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafeMethodCall.php +45 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafePropertyFetch.php +35 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PostDec.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PostInc.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PreDec.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PreInc.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Print_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PropertyFetch.php +35 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ShellExec.php +30 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/StaticCall.php +45 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/StaticPropertyFetch.php +36 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Ternary.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Throw_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryMinus.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryPlus.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Variable.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/YieldFrom.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Yield_.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Expr.php +8 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/FunctionLike.php +40 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Identifier.php +85 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/InterpolatedStringPart.php +32 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/IntersectionType.php +27 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/MatchArm.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Name/FullyQualified.php +49 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Name/Relative.php +49 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Name.php +278 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/NullableType.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Param.php +123 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/PropertyHook.php +105 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/PropertyItem.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/DNumber.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/Encapsed.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/EncapsedStringPart.php +17 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/Float_.php +78 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/Int_.php +82 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/InterpolatedString.php +34 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/LNumber.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Class_.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Dir.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/File.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Function_.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Line.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Method.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Namespace_.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Property.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Trait_.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst.php +27 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/String_.php +161 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar.php +6 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/StaticVar.php +39 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Block.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Break_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Case_.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Catch_.php +40 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassConst.php +77 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassLike.php +109 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassMethod.php +154 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Class_.php +94 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Const_.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Continue_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/DeclareDeclare.php +17 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Declare_.php +34 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Do_.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Echo_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ElseIf_.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Else_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/EnumCase.php +36 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Enum_.php +44 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Expression.php +32 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Finally_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/For_.php +47 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Foreach_.php +50 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Function_.php +81 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Global_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Goto_.php +30 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/GroupUse.php +41 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/HaltCompiler.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/If_.php +46 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/InlineHTML.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Interface_.php +40 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Label.php +30 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Namespace_.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Nop.php +16 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Property.php +121 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/PropertyProperty.php +17 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Return_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/StaticVar.php +15 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Static_.php +30 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Switch_.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUse.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Alias.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Precedence.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation.php +12 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Trait_.php +34 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TryCatch.php +37 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Unset_.php +29 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php +17 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Use_.php +47 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/While_.php +33 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt.php +8 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/UnionType.php +27 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/UseItem.php +55 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/VarLikeIdentifier.php +16 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/VariadicPlaceholder.php +27 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node.php +150 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeAbstract.php +181 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeDumper.php +299 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeFinder.php +90 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php +287 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeTraverserInterface.php +26 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/CloningVisitor.php +19 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/CommentAnnotatingVisitor.php +82 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/FindingVisitor.php +47 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/FirstFindingVisitor.php +49 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/NameResolver.php +269 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/NodeConnectingVisitor.php +73 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/ParentConnectingVisitor.php +51 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor.php +124 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/NodeVisitorAbstract.php +24 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Parser/Php7.php +2919 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Parser/Php8.php +2917 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Parser.php +24 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/ParserAbstract.php +1335 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/ParserFactory.php +42 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/PhpVersion.php +175 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/PrettyPrinter/Standard.php +1232 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/PrettyPrinter.php +51 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/PrettyPrinterAbstract.php +1706 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Token.php +18 -0
- webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/compatibility_tokens.php +71 -0
- webshell_analyzer/extractor/extractor.py +73 -0
- webshell_analyzer/extractor/lexical_extraction/lexicalExtractor.py +31 -0
- webshell_analyzer/extractor/statistical_extraction/statisticalExtractor.py +60 -0
- webshell_analyzer/model/features_selected.json +1 -0
- webshell_analyzer/model/model_loader.py +19 -0
- webshell_analyzer/model/rf_webshell_model.joblib +0 -0
- webshell_analyzer/modules/__init__.py +0 -0
- webshell_analyzer/modules/detector.py +174 -0
- webshell_analyzer/modules/scanner.py +68 -0
- webshell_analyzer-1.0.0.dist-info/METADATA +105 -0
- webshell_analyzer-1.0.0.dist-info/RECORD +304 -0
- webshell_analyzer-1.0.0.dist-info/WHEEL +5 -0
- webshell_analyzer-1.0.0.dist-info/entry_points.txt +2 -0
- webshell_analyzer-1.0.0.dist-info/licenses/LICENSE +21 -0
- webshell_analyzer-1.0.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Interface_ extends ClassLike {
|
|
8
|
+
/** @var Node\Name[] Extended interfaces */
|
|
9
|
+
public array $extends;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Constructs a class node.
|
|
13
|
+
*
|
|
14
|
+
* @param string|Node\Identifier $name Name
|
|
15
|
+
* @param array{
|
|
16
|
+
* extends?: Node\Name[],
|
|
17
|
+
* stmts?: Node\Stmt[],
|
|
18
|
+
* attrGroups?: Node\AttributeGroup[],
|
|
19
|
+
* } $subNodes Array of the following optional subnodes:
|
|
20
|
+
* 'extends' => array(): Name of extended interfaces
|
|
21
|
+
* 'stmts' => array(): Statements
|
|
22
|
+
* 'attrGroups' => array(): PHP attribute groups
|
|
23
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
24
|
+
*/
|
|
25
|
+
public function __construct($name, array $subNodes = [], array $attributes = []) {
|
|
26
|
+
$this->attributes = $attributes;
|
|
27
|
+
$this->name = \is_string($name) ? new Node\Identifier($name) : $name;
|
|
28
|
+
$this->extends = $subNodes['extends'] ?? [];
|
|
29
|
+
$this->stmts = $subNodes['stmts'] ?? [];
|
|
30
|
+
$this->attrGroups = $subNodes['attrGroups'] ?? [];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public function getSubNodeNames(): array {
|
|
34
|
+
return ['attrGroups', 'name', 'extends', 'stmts'];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
public function getType(): string {
|
|
38
|
+
return 'Stmt_Interface';
|
|
39
|
+
}
|
|
40
|
+
}
|
webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Label.php
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Identifier;
|
|
6
|
+
use PhpParser\Node\Stmt;
|
|
7
|
+
|
|
8
|
+
class Label extends Stmt {
|
|
9
|
+
/** @var Identifier Name */
|
|
10
|
+
public Identifier $name;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Constructs a label node.
|
|
14
|
+
*
|
|
15
|
+
* @param string|Identifier $name Name
|
|
16
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
17
|
+
*/
|
|
18
|
+
public function __construct($name, array $attributes = []) {
|
|
19
|
+
$this->attributes = $attributes;
|
|
20
|
+
$this->name = \is_string($name) ? new Identifier($name) : $name;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
public function getSubNodeNames(): array {
|
|
24
|
+
return ['name'];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
public function getType(): string {
|
|
28
|
+
return 'Stmt_Label';
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Namespace_ extends Node\Stmt {
|
|
8
|
+
/* For use in the "kind" attribute */
|
|
9
|
+
public const KIND_SEMICOLON = 1;
|
|
10
|
+
public const KIND_BRACED = 2;
|
|
11
|
+
|
|
12
|
+
/** @var null|Node\Name Name */
|
|
13
|
+
public ?Node\Name $name;
|
|
14
|
+
/** @var Node\Stmt[] Statements */
|
|
15
|
+
public $stmts;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Constructs a namespace node.
|
|
19
|
+
*
|
|
20
|
+
* @param null|Node\Name $name Name
|
|
21
|
+
* @param null|Node\Stmt[] $stmts Statements
|
|
22
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
23
|
+
*/
|
|
24
|
+
public function __construct(?Node\Name $name = null, ?array $stmts = [], array $attributes = []) {
|
|
25
|
+
$this->attributes = $attributes;
|
|
26
|
+
$this->name = $name;
|
|
27
|
+
$this->stmts = $stmts;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
public function getSubNodeNames(): array {
|
|
31
|
+
return ['name', 'stmts'];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
public function getType(): string {
|
|
35
|
+
return 'Stmt_Namespace';
|
|
36
|
+
}
|
|
37
|
+
}
|
webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Nop.php
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
/** Nop/empty statement (;). */
|
|
8
|
+
class Nop extends Node\Stmt {
|
|
9
|
+
public function getSubNodeNames(): array {
|
|
10
|
+
return [];
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
public function getType(): string {
|
|
14
|
+
return 'Stmt_Nop';
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Modifiers;
|
|
6
|
+
use PhpParser\Node;
|
|
7
|
+
use PhpParser\Node\ComplexType;
|
|
8
|
+
use PhpParser\Node\Identifier;
|
|
9
|
+
use PhpParser\Node\Name;
|
|
10
|
+
use PhpParser\Node\PropertyItem;
|
|
11
|
+
|
|
12
|
+
class Property extends Node\Stmt {
|
|
13
|
+
/** @var int Modifiers */
|
|
14
|
+
public int $flags;
|
|
15
|
+
/** @var PropertyItem[] Properties */
|
|
16
|
+
public array $props;
|
|
17
|
+
/** @var null|Identifier|Name|ComplexType Type declaration */
|
|
18
|
+
public ?Node $type;
|
|
19
|
+
/** @var Node\AttributeGroup[] PHP attribute groups */
|
|
20
|
+
public array $attrGroups;
|
|
21
|
+
/** @var Node\PropertyHook[] Property hooks */
|
|
22
|
+
public array $hooks;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Constructs a class property list node.
|
|
26
|
+
*
|
|
27
|
+
* @param int $flags Modifiers
|
|
28
|
+
* @param PropertyItem[] $props Properties
|
|
29
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
30
|
+
* @param null|Identifier|Name|ComplexType $type Type declaration
|
|
31
|
+
* @param Node\AttributeGroup[] $attrGroups PHP attribute groups
|
|
32
|
+
* @param Node\PropertyHook[] $hooks Property hooks
|
|
33
|
+
*/
|
|
34
|
+
public function __construct(int $flags, array $props, array $attributes = [], ?Node $type = null, array $attrGroups = [], array $hooks = []) {
|
|
35
|
+
$this->attributes = $attributes;
|
|
36
|
+
$this->flags = $flags;
|
|
37
|
+
$this->props = $props;
|
|
38
|
+
$this->type = $type;
|
|
39
|
+
$this->attrGroups = $attrGroups;
|
|
40
|
+
$this->hooks = $hooks;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
public function getSubNodeNames(): array {
|
|
44
|
+
return ['attrGroups', 'flags', 'type', 'props', 'hooks'];
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Whether the property is explicitly or implicitly public.
|
|
49
|
+
*/
|
|
50
|
+
public function isPublic(): bool {
|
|
51
|
+
return ($this->flags & Modifiers::PUBLIC) !== 0
|
|
52
|
+
|| ($this->flags & Modifiers::VISIBILITY_MASK) === 0;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Whether the property is protected.
|
|
57
|
+
*/
|
|
58
|
+
public function isProtected(): bool {
|
|
59
|
+
return (bool) ($this->flags & Modifiers::PROTECTED);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Whether the property is private.
|
|
64
|
+
*/
|
|
65
|
+
public function isPrivate(): bool {
|
|
66
|
+
return (bool) ($this->flags & Modifiers::PRIVATE);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Whether the property is static.
|
|
71
|
+
*/
|
|
72
|
+
public function isStatic(): bool {
|
|
73
|
+
return (bool) ($this->flags & Modifiers::STATIC);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Whether the property is readonly.
|
|
78
|
+
*/
|
|
79
|
+
public function isReadonly(): bool {
|
|
80
|
+
return (bool) ($this->flags & Modifiers::READONLY);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Whether the property is abstract.
|
|
85
|
+
*/
|
|
86
|
+
public function isAbstract(): bool {
|
|
87
|
+
return (bool) ($this->flags & Modifiers::ABSTRACT);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Whether the property is final.
|
|
92
|
+
*/
|
|
93
|
+
public function isFinal(): bool {
|
|
94
|
+
return (bool) ($this->flags & Modifiers::FINAL);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Whether the property has explicit public(set) visibility.
|
|
99
|
+
*/
|
|
100
|
+
public function isPublicSet(): bool {
|
|
101
|
+
return (bool) ($this->flags & Modifiers::PUBLIC_SET);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Whether the property has explicit protected(set) visibility.
|
|
106
|
+
*/
|
|
107
|
+
public function isProtectedSet(): bool {
|
|
108
|
+
return (bool) ($this->flags & Modifiers::PROTECTED_SET);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* Whether the property has explicit private(set) visibility.
|
|
113
|
+
*/
|
|
114
|
+
public function isPrivateSet(): bool {
|
|
115
|
+
return (bool) ($this->flags & Modifiers::PRIVATE_SET);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
public function getType(): string {
|
|
119
|
+
return 'Stmt_Property';
|
|
120
|
+
}
|
|
121
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\PropertyItem;
|
|
6
|
+
|
|
7
|
+
require __DIR__ . '/../PropertyItem.php';
|
|
8
|
+
|
|
9
|
+
if (false) {
|
|
10
|
+
/**
|
|
11
|
+
* For classmap-authoritative support.
|
|
12
|
+
*
|
|
13
|
+
* @deprecated use \PhpParser\Node\PropertyItem instead.
|
|
14
|
+
*/
|
|
15
|
+
class PropertyProperty extends PropertyItem {
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Return_ extends Node\Stmt {
|
|
8
|
+
/** @var null|Node\Expr Expression */
|
|
9
|
+
public ?Node\Expr $expr;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Constructs a return node.
|
|
13
|
+
*
|
|
14
|
+
* @param null|Node\Expr $expr Expression
|
|
15
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
16
|
+
*/
|
|
17
|
+
public function __construct(?Node\Expr $expr = null, array $attributes = []) {
|
|
18
|
+
$this->attributes = $attributes;
|
|
19
|
+
$this->expr = $expr;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
public function getSubNodeNames(): array {
|
|
23
|
+
return ['expr'];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getType(): string {
|
|
27
|
+
return 'Stmt_Return';
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
require __DIR__ . '/../StaticVar.php';
|
|
6
|
+
|
|
7
|
+
if (false) {
|
|
8
|
+
/**
|
|
9
|
+
* For classmap-authoritative support.
|
|
10
|
+
*
|
|
11
|
+
* @deprecated use \PhpParser\Node\StaticVar instead.
|
|
12
|
+
*/
|
|
13
|
+
class StaticVar extends \PhpParser\Node\StaticVar {
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\StaticVar;
|
|
6
|
+
use PhpParser\Node\Stmt;
|
|
7
|
+
|
|
8
|
+
class Static_ extends Stmt {
|
|
9
|
+
/** @var StaticVar[] Variable definitions */
|
|
10
|
+
public array $vars;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Constructs a static variables list node.
|
|
14
|
+
*
|
|
15
|
+
* @param StaticVar[] $vars Variable definitions
|
|
16
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
17
|
+
*/
|
|
18
|
+
public function __construct(array $vars, array $attributes = []) {
|
|
19
|
+
$this->attributes = $attributes;
|
|
20
|
+
$this->vars = $vars;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
public function getSubNodeNames(): array {
|
|
24
|
+
return ['vars'];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
public function getType(): string {
|
|
28
|
+
return 'Stmt_Static';
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Switch_ extends Node\Stmt {
|
|
8
|
+
/** @var Node\Expr Condition */
|
|
9
|
+
public Node\Expr $cond;
|
|
10
|
+
/** @var Case_[] Case list */
|
|
11
|
+
public array $cases;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Constructs a case node.
|
|
15
|
+
*
|
|
16
|
+
* @param Node\Expr $cond Condition
|
|
17
|
+
* @param Case_[] $cases Case list
|
|
18
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
19
|
+
*/
|
|
20
|
+
public function __construct(Node\Expr $cond, array $cases, array $attributes = []) {
|
|
21
|
+
$this->attributes = $attributes;
|
|
22
|
+
$this->cond = $cond;
|
|
23
|
+
$this->cases = $cases;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getSubNodeNames(): array {
|
|
27
|
+
return ['cond', 'cases'];
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
public function getType(): string {
|
|
31
|
+
return 'Stmt_Switch';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class TraitUse extends Node\Stmt {
|
|
8
|
+
/** @var Node\Name[] Traits */
|
|
9
|
+
public array $traits;
|
|
10
|
+
/** @var TraitUseAdaptation[] Adaptations */
|
|
11
|
+
public array $adaptations;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Constructs a trait use node.
|
|
15
|
+
*
|
|
16
|
+
* @param Node\Name[] $traits Traits
|
|
17
|
+
* @param TraitUseAdaptation[] $adaptations Adaptations
|
|
18
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
19
|
+
*/
|
|
20
|
+
public function __construct(array $traits, array $adaptations = [], array $attributes = []) {
|
|
21
|
+
$this->attributes = $attributes;
|
|
22
|
+
$this->traits = $traits;
|
|
23
|
+
$this->adaptations = $adaptations;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getSubNodeNames(): array {
|
|
27
|
+
return ['traits', 'adaptations'];
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
public function getType(): string {
|
|
31
|
+
return 'Stmt_TraitUse';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt\TraitUseAdaptation;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Alias extends Node\Stmt\TraitUseAdaptation {
|
|
8
|
+
/** @var null|int New modifier */
|
|
9
|
+
public ?int $newModifier;
|
|
10
|
+
/** @var null|Node\Identifier New name */
|
|
11
|
+
public ?Node\Identifier $newName;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Constructs a trait use precedence adaptation node.
|
|
15
|
+
*
|
|
16
|
+
* @param null|Node\Name $trait Trait name
|
|
17
|
+
* @param string|Node\Identifier $method Method name
|
|
18
|
+
* @param null|int $newModifier New modifier
|
|
19
|
+
* @param null|string|Node\Identifier $newName New name
|
|
20
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
21
|
+
*/
|
|
22
|
+
public function __construct(?Node\Name $trait, $method, ?int $newModifier, $newName, array $attributes = []) {
|
|
23
|
+
$this->attributes = $attributes;
|
|
24
|
+
$this->trait = $trait;
|
|
25
|
+
$this->method = \is_string($method) ? new Node\Identifier($method) : $method;
|
|
26
|
+
$this->newModifier = $newModifier;
|
|
27
|
+
$this->newName = \is_string($newName) ? new Node\Identifier($newName) : $newName;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
public function getSubNodeNames(): array {
|
|
31
|
+
return ['trait', 'method', 'newModifier', 'newName'];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
public function getType(): string {
|
|
35
|
+
return 'Stmt_TraitUseAdaptation_Alias';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt\TraitUseAdaptation;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Precedence extends Node\Stmt\TraitUseAdaptation {
|
|
8
|
+
/** @var Node\Name[] Overwritten traits */
|
|
9
|
+
public array $insteadof;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Constructs a trait use precedence adaptation node.
|
|
13
|
+
*
|
|
14
|
+
* @param Node\Name $trait Trait name
|
|
15
|
+
* @param string|Node\Identifier $method Method name
|
|
16
|
+
* @param Node\Name[] $insteadof Overwritten traits
|
|
17
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
18
|
+
*/
|
|
19
|
+
public function __construct(Node\Name $trait, $method, array $insteadof, array $attributes = []) {
|
|
20
|
+
$this->attributes = $attributes;
|
|
21
|
+
$this->trait = $trait;
|
|
22
|
+
$this->method = \is_string($method) ? new Node\Identifier($method) : $method;
|
|
23
|
+
$this->insteadof = $insteadof;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getSubNodeNames(): array {
|
|
27
|
+
return ['trait', 'method', 'insteadof'];
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
public function getType(): string {
|
|
31
|
+
return 'Stmt_TraitUseAdaptation_Precedence';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
abstract class TraitUseAdaptation extends Node\Stmt {
|
|
8
|
+
/** @var Node\Name|null Trait name */
|
|
9
|
+
public ?Node\Name $trait;
|
|
10
|
+
/** @var Node\Identifier Method name */
|
|
11
|
+
public Node\Identifier $method;
|
|
12
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Trait_ extends ClassLike {
|
|
8
|
+
/**
|
|
9
|
+
* Constructs a trait node.
|
|
10
|
+
*
|
|
11
|
+
* @param string|Node\Identifier $name Name
|
|
12
|
+
* @param array{
|
|
13
|
+
* stmts?: Node\Stmt[],
|
|
14
|
+
* attrGroups?: Node\AttributeGroup[],
|
|
15
|
+
* } $subNodes Array of the following optional subnodes:
|
|
16
|
+
* 'stmts' => array(): Statements
|
|
17
|
+
* 'attrGroups' => array(): PHP attribute groups
|
|
18
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
19
|
+
*/
|
|
20
|
+
public function __construct($name, array $subNodes = [], array $attributes = []) {
|
|
21
|
+
$this->attributes = $attributes;
|
|
22
|
+
$this->name = \is_string($name) ? new Node\Identifier($name) : $name;
|
|
23
|
+
$this->stmts = $subNodes['stmts'] ?? [];
|
|
24
|
+
$this->attrGroups = $subNodes['attrGroups'] ?? [];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
public function getSubNodeNames(): array {
|
|
28
|
+
return ['attrGroups', 'name', 'stmts'];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
public function getType(): string {
|
|
32
|
+
return 'Stmt_Trait';
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class TryCatch extends Node\Stmt {
|
|
8
|
+
/** @var Node\Stmt[] Statements */
|
|
9
|
+
public array $stmts;
|
|
10
|
+
/** @var Catch_[] Catches */
|
|
11
|
+
public array $catches;
|
|
12
|
+
/** @var null|Finally_ Optional finally node */
|
|
13
|
+
public ?Finally_ $finally;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Constructs a try catch node.
|
|
17
|
+
*
|
|
18
|
+
* @param Node\Stmt[] $stmts Statements
|
|
19
|
+
* @param Catch_[] $catches Catches
|
|
20
|
+
* @param null|Finally_ $finally Optional finally node
|
|
21
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
22
|
+
*/
|
|
23
|
+
public function __construct(array $stmts, array $catches, ?Finally_ $finally = null, array $attributes = []) {
|
|
24
|
+
$this->attributes = $attributes;
|
|
25
|
+
$this->stmts = $stmts;
|
|
26
|
+
$this->catches = $catches;
|
|
27
|
+
$this->finally = $finally;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
public function getSubNodeNames(): array {
|
|
31
|
+
return ['stmts', 'catches', 'finally'];
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
public function getType(): string {
|
|
35
|
+
return 'Stmt_TryCatch';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
|
|
7
|
+
class Unset_ extends Node\Stmt {
|
|
8
|
+
/** @var Node\Expr[] Variables to unset */
|
|
9
|
+
public array $vars;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Constructs an unset node.
|
|
13
|
+
*
|
|
14
|
+
* @param Node\Expr[] $vars Variables to unset
|
|
15
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
16
|
+
*/
|
|
17
|
+
public function __construct(array $vars, array $attributes = []) {
|
|
18
|
+
$this->attributes = $attributes;
|
|
19
|
+
$this->vars = $vars;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
public function getSubNodeNames(): array {
|
|
23
|
+
return ['vars'];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public function getType(): string {
|
|
27
|
+
return 'Stmt_Unset';
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\UseItem;
|
|
6
|
+
|
|
7
|
+
require __DIR__ . '/../UseItem.php';
|
|
8
|
+
|
|
9
|
+
if (false) {
|
|
10
|
+
/**
|
|
11
|
+
* For classmap-authoritative support.
|
|
12
|
+
*
|
|
13
|
+
* @deprecated use \PhpParser\Node\UseItem instead.
|
|
14
|
+
*/
|
|
15
|
+
class UseUse extends UseItem {
|
|
16
|
+
}
|
|
17
|
+
}
|
webshell_analyzer/extractor/ast_extraction/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Use_.php
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Stmt;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Stmt;
|
|
6
|
+
use PhpParser\Node\UseItem;
|
|
7
|
+
|
|
8
|
+
class Use_ extends Stmt {
|
|
9
|
+
/**
|
|
10
|
+
* Unknown type. Both Stmt\Use_ / Stmt\GroupUse and Stmt\UseUse have a $type property, one of them will always be
|
|
11
|
+
* TYPE_UNKNOWN while the other has one of the three other possible types. For normal use statements the type on the
|
|
12
|
+
* Stmt\UseUse is unknown. It's only the other way around for mixed group use declarations.
|
|
13
|
+
*/
|
|
14
|
+
public const TYPE_UNKNOWN = 0;
|
|
15
|
+
/** Class or namespace import */
|
|
16
|
+
public const TYPE_NORMAL = 1;
|
|
17
|
+
/** Function import */
|
|
18
|
+
public const TYPE_FUNCTION = 2;
|
|
19
|
+
/** Constant import */
|
|
20
|
+
public const TYPE_CONSTANT = 3;
|
|
21
|
+
|
|
22
|
+
/** @var self::TYPE_* Type of alias */
|
|
23
|
+
public int $type;
|
|
24
|
+
/** @var UseItem[] Aliases */
|
|
25
|
+
public array $uses;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Constructs an alias (use) list node.
|
|
29
|
+
*
|
|
30
|
+
* @param UseItem[] $uses Aliases
|
|
31
|
+
* @param Stmt\Use_::TYPE_* $type Type of alias
|
|
32
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
33
|
+
*/
|
|
34
|
+
public function __construct(array $uses, int $type = self::TYPE_NORMAL, array $attributes = []) {
|
|
35
|
+
$this->attributes = $attributes;
|
|
36
|
+
$this->type = $type;
|
|
37
|
+
$this->uses = $uses;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
public function getSubNodeNames(): array {
|
|
41
|
+
return ['type', 'uses'];
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
public function getType(): string {
|
|
45
|
+
return 'Stmt_Use';
|
|
46
|
+
}
|
|
47
|
+
}
|